Java Class对象测试

2014-11-23 21:26:35 · 作者: · 浏览: 25

Java 类对象 jvm在 加载 .class的时候 会创建该类唯一的class对象 以后无论创建多少个实例,该class对象是不变的。


每一个class对象 getClass() 都会获得同一个class对象 class java.lang.Class ,该对象是唯一不变的。


public void test() {


System.out.println("这是test...方法....");


}


private static void test2() {


try {


Class C = Class.forName("com.yjm.asset.Test");


System.out.println(C.hashCode());


((Test) C.newInstance()).test();


System.out.println(Test.class.getClass().toString());


String s = "test";


System.out


.println("hashcode:" + s.getClass().getClass().hashCode());


Test t = new Test();


AssetObject assetObject = new AssetObject();


System.out.println("hashcode:"


+ assetObject.getClass().getClass().hashCode());


System.out.println(t.getClass().hashCode());


} catch (ClassNotFoundException e) {


e.printStackTrace();


} catch (InstantiationException e) {


e.printStackTrace();


} catch (IllegalAccessException e) {


e.printStackTrace();


}


}


测试结果:


33311724
这是test...方法....
class java.lang.Class
hashcode:14452073
hashcode:14452073
33311724