Перечисление 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 определены в этом примере?

Ответы на вопрос(8)

Ваш ответ на вопрос