我正在研究如何获取创建另一个对象的对象(或对象类型)。例如:
public class RootClass
{
public class A
{
public void MethodFromA()
{
}
}
public class B
{
public A A_object = new A();
public void MethodFromB() { }
}
B BObject = new B();
A rootAObject = new A();
public void DoMethod(A anA_object)
{
}
main()
{
/* Somehow through reflection
* get the instance of BObject
* of type B from only the info
* given in anA_object or at
* the very least just know that
* anA_object was created in
* class B and not root. */
DoMethod(BObject.A_object);
/* Same as above except know that
* this A object came from root
* and is not from B class */
DoMethod(rootAObject);
}
}
附加信息:这只是一个快速代码,用于模拟我拥有的大型项目的一部分。问题是我有一个自定义类,它在许多其他类中实例化了很多地方。这个自定义类有一个函数,应该能够调用其中的任何函数或实例化它的类中的任何函数。非常通用的处理,但需要。基本上我需要“。”的倒数。所以对于objectA.objectB,我只需要通过将objectB传递给某个函数来找到objectA。
谢谢!