解析成員屬性和成員方法

2021-05-24 12:39:28 字數 1604 閱讀 1267

解析成員方法

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 ...