[Java反射基礎一]Class類的使用

 任何一個類都是Class類的實例對象,這個實例對象有三種表示方式
  • 第一種表示方式(任何一個類都有一個隱含的靜態成員變量class):

 1 Class c1 = Foo.class; spa

  • 第二種表示方式(已知該類對象,經過getClass方法):
1 Foo foo1 = new Foo(); 
2 Class c2 = foo1.getClass();
  ※ c一、c2表示了Foo類的類類型(class type)
  • 第三種表示方式
1 Class c3 = null;
2 try {
3     c3 = Class.forName("com.format.test.Foo");
4 } catch (ClassNotFoundException e) {
5     e.printStackTrace();
6 }
  ※ 經過類的類型建立該類的對象實例
1 try {
2     Foo foo2 = (Foo) c1.newInstance(); //須要有無參構造
3 } catch (InstantiationException e) {
4     e.printStackTrace();
5 } catch (IllegalAccessException e) {
6     e.printStackTrace();
7 }
相關文章
相關標籤/搜索