Java Class和反射
Class对象
public final class Class<T> implements java.io.Serializable,GenericDeclaration,Type, AnnotatedElement{
/*
* 匿名构造器,只能JVM来创建类对象!
* Private constructor.
* Only the Java Virtual Machine
* creates Class objects.
*/
private Class(ClassLoader loader) {
classLoader = loader;
}
}获取类对象
class MyClass{}
MyClass mClass1 = new MyClass();
// 每个类都有一个隐含的静态成员class
Class c1 = MyClass.class;
// 每个类都有getClass()方法
Class c2 = mClass1.getClass();
// 最最常用,只需一条字符串,不需要有对象不需要已经导入包。
// 注意,Class.forName()需要传入类的全路径,如果当前类与参数类在同一包下即可省略包名
// 实现类的动态加载,如果目标类还未被加载,则JVM会去加载该类。
try {
mClass = Class.forName("custom.OtherClass");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}获取操作类信息
类型强制转换
反射机制
Constructor类
Field类
Method类
最后更新于