按名称访问对象变量和方法
Access objects variable & method by name
示例class:
class Test {
public int marks;
public String location;
public String show(){
return "Good morning!";
}
}
有什么方法可以通过 getter 访问 marks
和 locations
?可能是这样:
Test t = new Test();
System.out.println(t.get("marks"));
也许
System.out.println(t.call("show"));
我的确切用例是能够访问 R.id.[fieldname] 以访问 Android 资源 ID
这行得通吗?
R.id.getClass().getField("date").get(R.id) ?
我该怎么做?
Test t = new Test();
System.out.println(t.getClass().getField("marks").get(t));
要调用一个方法并从其他方法获取它的值 class 使用这个
Method method = obj.getClass().getMethod("Methodname", new Class[] {});
String output = (String) method.invoke(obj, new Object[] {});
示例class:
class Test {
public int marks;
public String location;
public String show(){
return "Good morning!";
}
}
有什么方法可以通过 getter 访问 marks
和 locations
?可能是这样:
Test t = new Test();
System.out.println(t.get("marks"));
也许
System.out.println(t.call("show"));
我的确切用例是能够访问 R.id.[fieldname] 以访问 Android 资源 ID
这行得通吗?
R.id.getClass().getField("date").get(R.id) ?
我该怎么做?
Test t = new Test();
System.out.println(t.getClass().getField("marks").get(t));
要调用一个方法并从其他方法获取它的值 class 使用这个
Method method = obj.getClass().getMethod("Methodname", new Class[] {});
String output = (String) method.invoke(obj, new Object[] {});