首页 > 编程 > Java > 正文

java反射学习

2019-11-11 00:02:12
字体:
来源:转载
供稿:网友

java反射很有意思,在知乎上找到一个讲解的不错的教程 https://www.zhihu.com/question/24304289

一,取得Class类对象的方法

public static Class<?> forName(String className) throws ClassNotFoundException;

二,通过反射实例化对象 public T newInstance() throws InstantiationException, IllegalaccessException;

三,反射的应用(获取类的构造方法、普通方法、属性) 3.1 获取构造函数 取得一个类的全部构造:

public Constructor<?>[] getConstructors() throws SecurityException

取得一个类的指定参数构造:

public Constructor<T> getConstructor(Class<?>... parameterTypes) throws NoSuchMethodException, SecurityException

3.2 获取普通方法 取得全部方法:public Method[] getMethods() throws SecurityException;

·取得指定方法:

public Method getMethod(String name, Class<?>... parameterTypes) throws NoSuchMethodException, SecurityException

发现以上的方法返回的都是java.lang.reflect.Method类的对象。

3.3 获取成员 取得本类的全部成员:

public Field[] getDeclaredFields() throws SecurityException;

·取得指定的成员:

public Field getDeclaredField(String name) throws NoSuchFieldException, SecurityException;

这两个方法的返回值类型是java.lang.reflect.Field类的对象,下面首先观察如何取得一个类之中的全部属性。

感谢原创作者,等回到自己电脑上时,必须亲自敲代码验证下正确性。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表