反射:框架設計的靈魂
將類的各個組成部分封裝為其他物件,這就是反射機制
。class檔案中儲存編譯後的東西—還在硬碟上–source源**階段
第二階段–(類物件階段)類載入器(class類物件(三個物件1,成員變數 field2.構造方法 3成員方法 method))–反射機制
new乙個物件是儲存在記憶體中-*—為runtime執行時階段–第三階段
1在程式的執行過程中操縱這個物件
2可以解耦,提高程式的可擴充套件性
獲取class類物件
1 class.forname(全類名):將位元組碼檔案載入進記憶體,返回class物件
多用於配置檔案,將類名定義在配置檔案中,讀取檔案,載入類,因為他是穿字串
2.類名.class:通過類名的屬性來獲取
多用於引數傳遞
3.有物件之後,物件.getclass:該方法在object類中定義的
多用於物件的獲取位元組碼的方式
同乙個位元組碼檔案(.class)在一次程式執行過程中,只會被載入一次,不論通過哪一種方式。
class物件的功能
獲取的功能:
1獲取成員變數們
getfields() 獲取所有public修飾的成員變數
getfiles()
getdeclaresfield()獲取所有的成員變數不考慮修飾符使用時忽略修飾符安全檢查
setaccessible(true)–暴力反射
2獲取構造方法們
3獲取成員方法們
method getmethods
4獲取類名
獲取得到成員變數後
1.設定值set
2獲取值get
2獲取構造方法constructor–用來建立物件的
反射 基礎知識
一 型別 type 物件是什麼 比如 object x x是物件,object就是它的型別,在程式中如何描述型別這個概念呢?就是type system.type 要獲取某個類的型別可以用typeof 操作符 object a object b datatable t type atype typeo...
反射的知識點
1 反射 反射就是通過class檔案去呼叫構造方法 成員變數 成員方法 2 反射的用法 在用反射之前,要得到其class檔案物件,也就是用來裝你的物件的位元組碼檔案的物件 3 class中的三種方法 成員變數 field 成員方法 method 構造方法 construct 4 獲得class檔案物...
C 反射知識點
一 概念 c 通過型別來建立物件,呼叫物件中的方法屬性等資訊。二 反射提供的類 1assembly 引導程式集檔案 2type獲取乙個物件的型別 3typeof獲取乙個物件的型別 4propertyinfo屬性資訊 5methodinfo方法資訊 6activator建立物件 三 反射運用 通過反射...