把a和b实现为单件类,想在什么时候调用都行或者在a中有b属性
b中有a属性也行
你泥中有我,我泥中有你

解决方案 »

  1.   

    你描述得不够准确,我估计是A、B两个类各有一个对象,需要相互调用。对吧。
    如果只是在A类中调用B类,只需要A对象中随时new 一个B类对象就可以了。
    一般有两种方法解决:
    一是调用方法时,把相应的引用传递过去。如:
    class A{
        methodA(B b);
    }
    class B{
        methodB(A a);
    }main thread:
    A a=new A();
    B b=new B();
    a.methodA(b);
    b.methodB(a);
    二是B中有A的对象作为数据成员,A中有B对象作为数据成员
    class A{
        B b;
        methodA(){
            //use b directly
        }
    }
      

  2.   

    同意bigcrazy(大疯狂) 的。
    你在A类产生B类的引址或在B类产生A类。