java 反射的作用

反射:顧名思義,就是能從影子看到他的本尊(類和方法的取名通常都有特定的含義)   反編譯就是運用反射實現的    自定義或者自描述的

反射的內部實現

Person ->Class

public class  Class

{

       Field:描述屬性

       Method:描述方法

        Constructor:描述構造器

}

與反射有關4個類:Class(獲取實例,字段,方法)   Field(與字段相關的操作) 

                                 Method(與方法相關的操作)   Constructor(與構造函數相關的操作)


反射的3個作用:

1.修改內存中的對象屬性(private)

2.直接調用對象的方法(非常規的)

3.創建對象的實例


利用反射獲取實例的3個方法:

1.Class.forName("類的完整名稱")   必須進行顯式的異常處理

             返回與此類相關聯的Class對象

利用此反射方法獲取對象實例可實現通過XML文檔對實例的進行配置

<person class="test.Person"></person>

Person   p1=Class.forName("test.Person").newInstance();

2.Person p=new Person();

p1.getClass();//獲得一個與Person類相關聯的Class對象,利用此方法可以創建與先前對象一樣類型的對象

Person p2=p1.getClass().newInstance();

3.Person.class  這就是一個與Person有關的Class對象   Class<Person>

Person.class.newInstance();


發佈了36 篇原創文章 · 獲贊 6 · 訪問量 22萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章