解析成員方法
1、利用
method
執行方法
method物件提供了如下方法,用於執行它所代表的方法:
public object invoke(object obj,object... args)
使用method
可以執行無參、有參、多個參(帶陣列和基本資料型別)、靜態、私有的
方法。
2、建立類的例項的兩種方法:1
、可以通過
newinstance
方法來建立
class cls = class.forname("cn.csdn.reflect.student");
student entity = (student)cls.newinstance();
2、也可以通過
constructor
的方法來建立
class cls = class.forname("cn.csdn.reflect.student");
constructor csr = cls.getconstructor(null);
student entity = (student)csr.newinstance(null);
3、這兩種方法的區別:
class
類中的newinstance
方法只能在
student
中有乙個預設無引數構
造器時才能使用
例:1、
get methods
是返回多有的方法:
@test
public void test()throws exception
} 2、
解析:public void study方法
//當解析沒有返回值的方法時
invoke
方法的引數值為空
//有類的物件直接呼叫
newinstance()
必須確保該類中有乙個無參構造器
@test
public void test1()throws exception
3、解析私有方法
@test
public void test3()throws exception
4、解析
main
()方法
@test
public void test4()throws exception});
string src={};
md.invoke(entity, (object)src);
} 解析成員屬性
field物件提供了如下方法,用於設定、獲取物件屬性的值:
public void set(object obj,object value)
public object get(object obj)
//返回所有的物件屬性
例:@test
public void test()throws exception }
//獲取
private
屬性的值
@test
public void test2()throws exception
解析成員屬性和成員方法
解析成員方法 1 利用method執行方法 method物件提供了如下方法,用於執行它所代表的方法 public object invoke object obj,object.args 使用method可以執行無參 有參 多個參 帶陣列和基本資料型別 靜態 私有的 方法。建立類的例項的兩種方法 1...
成員變數和屬性
成員變數的作用域 inte ce person nsobject 屬性生成器 屬性生成器 property 1.自動的生成 getter和setter方法的 宣告 2.需要知道 引數型別和屬性名稱 3.是編譯器的特性 synthesize 生成getter 和 setter方法,最為簡單的實現 sy...
runtime獲取屬性和成員變數方法
成員變數 1 成員變數的定義 ivar 例項變數型別,是乙個指向objc ivar結構體的指標 typedef struct objc ivar ivar 2 相關函式 獲取所有成員變數 class copyivarlist 獲取成員變數名 ivar getname 獲取成員變數型別編碼 ivar ...