1. 程式人生 > >【java】淺析反射

【java】淺析反射

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】淺析反射