千鋒教育Java入門全套視頻教程(java核心技術,適合java零基礎,Java

反射是指在運?狀態(tài)中,對于任意?個類都能夠知道這個類所有的屬性和?法;并且對于任意?個對
象,都能夠調(diào)?它的任意?個?法;這種動態(tài)獲取信息以及動態(tài)調(diào)?對象?法的功能稱為反射機制。
反射涉及到四個核?類:
? java.lang.Class.java:類對象;
? java.lang.reflect.Constructor.java:類的構造器對象;
? java.lang.reflect.Method.java:類的?法對象;
? java.lang.reflect.Field.java:類的屬性對象;
反射有什么??
? 操作因訪問權限限制的屬性和?法;
? 實現(xiàn)?定義注解;
? 動態(tài)加載第三?jar包;
? 按需加載類,節(jié)省編譯和初始化APK的時間;
反射?作原理
當我們編寫完?個Java項?之后,每個java?件都會被編譯成?個.class?件,這些Class對象承載了
這個類的所有信息,包括?類、接?、構造函數(shù)、?法、屬性等,這些class?件在程序運?時會被
ClassLoader加載到虛擬機中。當?個類被加載以后,Java虛擬機就會在內(nèi)存中?動產(chǎn)??個Class對
象。我們通過new的形式創(chuàng)建對象實際上就是通過這些Class來創(chuàng)建,只是這個過程對于我們是不透
明的?已。
反射的?作原理就是借助Class.java、Constructor.java、Method.java、Field.java這四個類在程序
運?時動態(tài)訪問和修改任何類的?為及狀態(tài)。
標簽: