反射能解决这个问题?LZ实际动手试过了?如果楼主真能解决这个问题,我希望LZ能贴出代码出来,我是诚心学习的。最好做个例子,比如
class A {
int index;
public A(int index) {
this.index = index;
}
public void show() {
System.out.println("index=" + index);
}
}
public class FindVariant {
public static void main() {
FindVariant fv = new FindVariant();
A a = new A(1);
Object obj = fv.findByName("a");
if (obj instanceOf A) {
A aa = (A)obj;
aa.show();
if (aa == a) { //这里是判断找到的是不是想找的,如果是,引用地址应该是一样的
System.out.println("find the same variant.");
}
}
obj = findByClassNameAndName(A.class.getName(), "a");
if (obj instanceOf A) {
A aa = (A)obj;
aa.show();
if (aa == a) {
System.out.println("find the same variant.");
}
}
}
public Object findByName(String name) {
//LZ如果真的解决了,能把你的处理补写完这个函数吗?
}
public Object findByClassNameAndName(String className, String name) {
//就算你只知道class名,你又是怎么得到实际的变量的?也请你补写完这个函数好吗?
}
}