【java】淺析反射
阿新 • • 發佈:2017-05-16
cat trac catch pan print cep div dex 屬性
1,什麽反射
反射就是一種動態編程的技術,可以在運行階段動態的創建對象以及動態調用方法,具體由實參決定。
2,Class
java.lang.Class類的實例代表應用程序的類和接口,該類的實例代表一種數據類型。
可以通過以下4種方式獲取Class對象:
- 使用“數據類型.class”的方式獲取該類型的class對象
- 使用“對象.getClass()”的方式獲取該類型的class對象
- 使用“包裝類.TYPE”獲取該包裝類對應基本數據類型的class對象
- 使用Class類的“forName()”獲取參數類型的class對象
1 public static void main(String[] args) { 2 //使用"數據類型.class"獲取該類型的Class對象 3 System.out.println(int.class);//int 4 System.out.println(void.class);//void 5 System.out.println(Integer.class);//class java.lang.Integer 6 7 //使用"對象.getClass()"獲取該類型的Class對象8 String str=new String(); 9 System.out.println(str.getClass());//class java.lang.String 10 11 //使用"包裝類.TYPE"屬性獲取該包裝類對應的基本數據類型的Class對象 12 System.out.println(Integer.TYPE);//int 13 14 //使用Class類的forName()獲取參數類型的Class對象 15 try { 16 System.out.println(Class.forName("java.lang.Double"));//class java.lang.Double 17 } catch (ClassNotFoundException e) { 18 e.printStackTrace(); 19 } 20 }
3,Demo
【java】淺析反射