日期:2014-05-20  浏览次数:20619 次

JAVA内存中根据一个对象获取引用他的对象
比如:
CLASS   A
{
      B   b;
}

Class   B
{

}

A   a=new   A();
B   b=new   B();
a.b=b;
我希望如果我现在只能得到b,JAVA有什么方法可以得到引用了b的对象,这里应该是a
谢谢!

------解决方案--------------------
什么问题?我好像没有看懂
------解决方案--------------------
懂不起
------解决方案--------------------
好像只有借助外部的力量了

如果不能往B里加东西的话
------解决方案--------------------
这个应该是JVM做的事情把,或者自己写个监听器什么的
------解决方案--------------------
只能从设计上改善了

CLASS A
{
B b;
}

Class B
{
A a;
}
------解决方案--------------------
mark
------解决方案--------------------
好问题!


------解决方案--------------------
没什么办法吧???你把别人卖了还指望别人给你数钱?

在A里面想办法。
------解决方案--------------------
问题很抽象
------解决方案--------------------
笨办法:在每个实例化B时 把当前对象加到一个静态Map里,标号可以用类名+静态变量:

Class BMap
{
static HashMap B_Map=new HashMap();
}

Class A
{
B b
static int i=0;
...
b=...
++
key="A_"+i;
BMap.B_Map.add(key,this);
i++
}