以獲取class user為例
// public void set(object obj, object value)第乙個引數是物件是要設值屬性歸屬的那個類而不是屬性,切記
@data
class user
public class userdemo
// 2。類名.class
classaclass2 = user.class;
method methods = aclass2.getdeclaredmethods();
for (method m : methods)
// 3. new 類 再.getclass
user user = new user();
class<? extends user> aclass3 = user.getclass();
/*** 使用反射為類私有屬性賦值
*/user= aclass3.newinstance();
field age = aclass3.getdeclaredfield("age");
age.setaccessible(true);
// public void set(object obj, object value) 第乙個引數是物件 是那個時候類 而不是屬性,切記
age.set(user,new integer(20));
system.out.println(user.getage());
}}
反射機制獲取Class物件的三種方式
person person new person 1 通過object類的getclass 方法 需要先例項化乙個物件 class clazz1 person.getclass 2 通過物件例項方法獲取物件 需要先例項化乙個物件 class clazz2 person.class 3 類的全路徑 不...
反射機制 獲取Class物件的三種方式
條條大路通羅馬 殊途同歸 任何物件的建立都依賴於位元組碼,反射必要獲取位元組碼物件 是最為熟悉的object類中的getclass 方法,能夠完成自己所屬的位元組碼物件的獲取。人所共知 使用該方式,必要明確具體的類,並建立物件!該方式示例 public void test 是通過靜態屬性.class...
Java反射的三種實現方式
1 foo foo newfoo 第一種 通過object類的getclass方法 1 class cla foo.getclass 第二種 通過物件例項方法獲取物件 1 class cla foo.class 第三種 通過class.forname方式 1 class cla class.forn...