Java:具有彼此实例的类

Pet*_*ter 3 java

我觉得这是一个非常基本的问题,但我从未遇到过这样的情况.现在我有这样的结构:

public class Main{
    ClassA a = new ClassA();
    ClassB b = new ClassB(a);
}
Run Code Online (Sandbox Code Playgroud)

ClassA需要的ClassB,以及在Main.class.现在我注意到ClassA也必须知道ClassB.

public class Main{
    ClassA a = new ClassA(b);
    ClassB b = new ClassB(a);
}
Run Code Online (Sandbox Code Playgroud)

显然不行.首先我想过使用a Observer Pattern但这似乎对我来说太过分了,除了它不是通常使用的模式.
有没有一种方法,我可以Main.class知道ClassA.classClassB.class,以及化妆ClassA.class知道ClassB.class,反之亦然?由于Main.class使用ClassA,我必须只有一次初始化相同的类.

Kay*_*man 7

您不需要在构造函数中设置引用.您可以创建一个setter,您可以在创建两个对象后调用它们b.setA(a);.