Перечисление Java - не может ссылаться на поле, пока оно не определено
У меня есть перечисление, подобное приведенному ниже, но затмение говорит, что в первом определении каждой противоположной пары есть ошибки.
public enum Baz{
yin(yang), //Cannot reference a field before it is defined
yang(yin),
good(evil), //Cannot reference a field before it is defined
evil(good);
public final Baz opposite;
Baz(Baz opposite){
this.opposite = opposite;
}
}
То, что я хочу достичь, это возможность использоватьBaz.something.opposite
чтобы получитьopposite объектBaz.something
, Есть ли возможный обходной путь для этого? Может быть, пустой заполнитель дляyang
а такжеbad
доyin
а такжеgood
определены в этом примере?