Sepertinya saya tidak dapat mengakses anggota instance dari kelas sekitar dari dalam enum, karena saya bisa dari dalam kelas dalam. Apakah itu berarti enum bersifat statis? Apakah ada akses ke cakupan instance kelas di sekitarnya, atau apakah saya harus meneruskan instance tersebut ke metode enum di mana saya membutuhkannya?
public class Universe {
public final int theAnswer;
public enum Planet {
// ...
EARTH(...);
// ...
// ... constructor etc.
public int deepThought() {
// -> "No enclosing instance of type 'Universe' is accessible in this scope"
return Universe.this.theAnswer;
}
}
public Universe(int locallyUniversalAnswer) {
this.theAnswer = locallyUniversalAnswer;
}
}