java反射

2018-11-08  本文已影响0人  光_93e5

反射的作用

java反射,可以对任何一个类,都可以通过反射来获得这个类的所有属性和方法,

首先创建一个测试类

代码如下:

我们可以通过getDeclaredMethods和getDeclaredFields直接得到这个类的所有方法名称和成员变量名称

可以通过反射创建这个类的实例

我们也可以通过反射来调用私有的方法  在Test添加一个私有方法 run

可以看到正确的输出了

其中方法的作用

getMethods():获取一个类的公共方法,包含从父类继承而来的

getDeclaredMethods():获取一个类的全部方法名(包含私有,但不包含父类)

getFields():获取一个类的公共成员变量名,包含从父类继承而来的

getDeclaredFields(): 获取一个类的全部成员变量名(包含私有,但不包含父类)

getConstructors():获取一个类的公共构造函数,包含从父类继承而来的

getDeclaredConstructors():获取一个类的全部构造函数(包含私有,但不包含父类)

setAccessible(boolean b):取消或者设置访问权限检查

newInstance():创建一个实例

getDeclaredAnnotations():获取一个类的注解

getPackage():获取包所在位置

getClassLoader():获取类加载器

...

上一篇 下一篇

猜你喜欢

热点阅读