為了獲取返回值,必須指定 bindingflags.instance 或 bindingflags.static。指定 bindingflags.nonpublic 可在搜尋中包含非公共成員(即私有成員和受保護的成員)。指定 bindingflags.public 可在搜尋中包含公共成員。
指定 bindingflags.flattenhierarchy 可包含層次結構上的靜態成員。
bindingflags.ignorecase,表示忽略 name 的大小寫。
bindingflags.declaredonly,僅搜尋 type 上宣告的成員,而不搜尋被簡單繼承的成員。
可以使用下列 bindingflags 呼叫標誌表示要對成員採取的操作:
createinstance,表示呼叫建構函式。忽略 name。對其他呼叫標誌無效。
invokemethod,表示呼叫方法,而不呼叫建構函式或型別初始值設定項。對 setfield 或 setproperty 無效。
getfield,表示獲取字段值。對 setfield 無效。
setfield,表示設定字段值。對 getfield 無效。
getproperty,表示獲取屬性。對 setproperty 無效。
setproperty 表示設定屬性。對 getproperty 無效。
bindingflags.createinstance : 表示呼叫建構函式。忽略 name。對其他呼叫標誌無效
bindingflags.declaredonly : 僅搜尋 type 上宣告的成員,而不搜尋被簡單繼承的成員
bindingflags.default :沒有任何標誌
bindingflags.instance : 物件例項
bindingflags.static : 靜態成員
bindingflags.public : 指可在搜尋中包含公共成員
bindingflags.nonpublic : 指可在搜尋中包含非公共成員(即私有成員和受保護的成員)
bindingflags.flattenhierarchy : 指可包含層次結構上的靜態成員
bindingflags.ignorecase : 表示忽略 name 的大小寫
C 反射使用時注意BindingFlags的用法
最近剛剛開始用反射做專案,遇到乙個小的知識點,記錄一下。c 反射查詢方法時,預設只能查到public方法。如果想要查詢private方法,需要設定bindingflags.即 bindingflags.public bindingflags.instance 預設查詢public instance內...
C 反射使用時注意BindingFlags的用法
c 反射查詢方法時,預設只能查到public方法。如果想要查詢private方法,需要設定bindingflags.即 bindingflags.public bindingflags.instance 預設查詢public instance內容。bindingflags.nonpublic bin...
ios NSUserDefaults使用注意事項
nsuserdefaults適合儲存輕量級的資料,他不僅可以儲存基本資料型別,還可以儲存nsnumber integer float double nsstring,nsdate,nsarray,nsdictionary,bool型別。nsuserdefaults standarduserdefau...