我有两个枚举。第一:
public enum FirstEnum {
FIRST(SECOND);
private SecondEnum secondEnum;
FirstEnum(SecondEnum secondEnum) {
this.secondEnum = secondEnum;
}
public SecondEnum getSecondEnum() {
return secondEnum;
}
}
第二个枚举:
public enum SecondEnum {
SECOND(FIRST);
private FirstEnum firstEnum;
SecondEnum(FirstEnum firstEnum) {
this.firstEnum = firstEnum;
}
public FirstEnum getFirstEnum() {
return firstEnum;
}
}
当我运行此代码时:
public static void main(String[] args) {
System.out.println("First has: " + FIRST.getSecondEnum());
System.out.println("Second has: " + SECOND.getFirstEnum());
}
我有这个结果:
First has: SECOND
Second has: null
如果我换行 - 反之亦然。 我知道可能有一些像死锁,但如果我真的需要这种关系,我该怎么办?