1.运行期类型鉴定(RTTI)
2.instanceof语句 静态调用 isInstance()方法 动态调用
3.Class c = Class.forName(类名) 获得Class 类名要包含包名才能正确获得
c.getSuperclass() 获得父类Class
Class[] faces = c.getInterfaces(); 获得被实现接口的Class数组
4.初始化顺序
testTypeClass---class Class.TestClassType
---静态的参数初始化---
testTypeForName---class Class.TestClassType
----非静态的参数初始化---
----构造函数---
testTypeGetClass---class Class.TestClassType
上述三个方法都为同一个class对象,当我们编写一个新的java类时,JVM就会帮我们编译成class对象,存放在同名的.class文件中。在运行时,当需要生成这个类的对象,JVM就会检查此类是否已经装载内存中。若是没有装载,则把.class文件装入到内存中。若是装载,则根据class文件生成实例对象。
网友评论