前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【说站】java反射调用方法

【说站】java反射调用方法

作者头像
很酷的站长
发布2022-11-23 11:58:42
8510
发布2022-11-23 11:58:42
举报
文章被收录于专栏:站长的编程笔记

java反射调用方法

在方法的调用上,很多小伙伴已经邮搜接触。我们今天所要讲的反射,在调用的方法上有着不同类型的区别,分别是静态方法、构造方法和普通方法,下面我们分别就调用的实例带来介绍。

1、调用静态方法

代码语言:javascript
复制
Class<?> threadClazz = Class.forName("java.lang.Math");
Method method = threadClazz.getMethod("abs", long.class);
System.out.println(method.invoke(null, -10000l));

只需要将invoke方法的第一个参数设为null即可。

2、调用类中构造方法

取得类中指定参数类型的构造

代码语言:javascript
复制
public Constructor getConstructor(Class<?>… parameterTypes) throws NoSuchMethodException, SecurityException

只能取得类中public权限的构造方法

代码语言:javascript
复制
public Constructor getDeclaredConstructor(Class<?>… parameterTypes)

可以取得类中全部构造方法,包含私有构造。

3、调用类中指定名称的普通方法

代码语言:javascript
复制
public Method getMethod(String name, Class<?>… parameterTypes)
//方法有重载所以要传名称和参数类型取得本类以及父类中所有public方法
public Method getDeclaredMethod(String name, Class<?..parameterTypes)
取得本类中全部普通方法,包括私有方法。

以上就是java反射调用方法的介绍,对于不同的方法而言,反射调用的操作也是有所不同的。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • java反射调用方法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档