天天看點

java反射機制一(反射的基本概念和了解)

反射就是對一個類進行解剖,把一個類中的各種成分映射成一個類

java程式執行位元組碼檔案的過程

1啟動jvm程序

2把所有相關的位元組碼加入記憶體(類加載器)

3.系統為每個位元組碼生成一個class對象

4初始化(靜态代碼塊)

5靜态成員變量

得到一個類的Class對象的三種方法

1:類名.class;

2:該類的一個執行個體.getClass();

3:Class.forName("該類在目前包下的路徑");

public class Demo01 {

public static void main(String[] args) throws ClassNotFoundException {

Student st=new Student();

Class c2=Student.class;

Class c3 =st.getClass();

Class c4=Class.forName("com.part1.Student");

System.out.println(c2==c3);

System.out.println(c4==c3);

//對于基本類型和包裝器類型

Integer i=120;

Class c5=Integer.class;

Class c6=i.getClass();

System.out.println(c5==c6);

Class c7=int.class;

System.out.println(c5==c7);

Class c8=Integer.TYPE;

System.out.println(c7==c8);

}

}

true

true

true

false

true

注:基本資料類型和對應的包裝器類型得到的不是同一個class對象

但是包裝器類型.Type傳回的卻是基本資料類型的對象