Java Reflection操作Classes的简介说明
下文讲述使用java反射获取类中信息的方法分享,如下所示:
Java运行时,通过类的全限定名获取类对象
Class对象
在java反射操作一个类时,首先需获取类对象,如下所示:Class myObjectClass = MyObject.class;例:
Java运行时,通过类的全限定名获取类对象
String className = ... ;//类的全限定名 com.java265.MyClassName Class class = Class.forName(className);
类名
当我们获取完class对象后,我们可以使用 getName()获取类的全限定名称(包含包名+类名) getSimpleName()获取类名修饰符
在反射中,我们可获取其修饰符 public ,private等关键字int modifiers = class.getModifiers(); Modifier.isAbstract(int modifiers); Modifier.isFinal(int modifiers); Modifier.isInterface(int modifiers); Modifier.isNative(int modifiers); Modifier.isPrivate(int modifiers); Modifier.isProtected(int modifiers); Modifier.isPublic(int modifiers); Modifier.isStatic(int modifiers); Modifier.isStrict(int modifiers); Modifier.isSynchronized(int modifiers); Modifier.istransient(int modifiers); Modifier.isVolatile(int modifiers);
包信息
使用反射获取class对象的包信息,例:Package package = aClass.getPackage();
父类
使用反射获取父类信息Class superclass = aClass.getSuperclass();
查看类所实现的接口
Class[] interfaces = aClass.getInterfaces();
查看类实现的构造器
Constructor[] constructors = aClass.getConstructors();
查看类拥有的方法
Method[] method = aClass.getMethods();
查看类中的拥有的变量
Field[] method = aClass.getFields();
查看类注解
Annotation[] annotations = aClass.getAnnotations();
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。