sau*_*anu 2 java circular-dependency
我有两个类,如下所示:
public class A{
private String id ;
private SortedMap<String,B> answer = new TreeMap<String,B>();
private String text;
}
public class B{
private String id = null ;
private SortedMap<String,A> question = new TreeMap<String,A>();
private String text = null;
}
Run Code Online (Sandbox Code Playgroud)
有什么办法可以从上述类中删除循环依赖项?
不,没有,但这没问题。
在JAVA中具有循环依赖关系没有问题。如果要在两个方向上遍历结构,则具有它们是很常见的。想想一棵父母和孩子相互认识的树,从而形成循环依赖。
垃圾收集器将检测循环依赖项并进行处理。
唯一的问题在两个构造函数中都具有循环依赖关系时发生,这将导致堆栈溢出:)