Muk*_*mar 4 java algorithm cyclomatic-complexity object-graph
有一个类Company
,它引用了另一个Company
表示的实例parent
.比方说,有四家公司c1
,c2
,c3
和c4
和c2
,c3
,c4
有母公司设置c1
.
例如:
public class Company {
public Company parent;
public Company() { }
public Company(Company parent) {
this.parent = parent;
}
public static void main(String[] args) {
Company c1 = new Company();
Company c2 = new Company(c1);
Company c3 = new Company(c1);
Company c4 = new Company(c1);
}
Run Code Online (Sandbox Code Playgroud)
如果我们设置c2
为以下的母公司c1
:
c1.parent = c2;
Run Code Online (Sandbox Code Playgroud)
然后它将在公司层次结构中创建一个Cyclomatic Complexity无限循环,我们必须在系统中避免这种循环.
我们希望能够在运行时检测到这一点.在上述情况下,检查同一类对象的圈复杂度的最佳算法是什么?