[java] Variabile finale statica privata all'interno di un enum



0 Answers

È possibile, devi solo fare riferimento direttamente alle variabili.

class Foo {
  ...

  public enum MyEnum {

    MyEnumType(1, MyEnum.MY_STRING),
    MyEnumType2(2, MyEnum.MY_STRING),
    MyEnumType3(3, MyEnum.MY_OTHER_STRING);

    MyEnum(int num, String str) {
      ...
    }

     private static final String MY_STRING = "a string I use in a constructor";
     private static final String MY_OTHER_STRING = "a string I use in another constructor";  
  }
 ...
}
Question

Sto cercando di creare una variabile finale statica privata all'interno di un enum, ma continuo a ricevere un errore di compilazione. Qualcuno sa come risolvere questo problema?

Marcatori multipli su questa linea

  • Errore di sintassi, inserisci "Identificatore" per completare EnumConstantHeaderName
  • Errore di sintassi, inserisci "}" per completare EnumBody
class Foo {
  ...

  public enum MyEnum {
    private static final String MY_STRING = "a string I use in a constructor";
    private static final String MY_OTHER_STRING = "a string I use in another constructor";      

    MyEnumType(1, MY_STRING),
    MyEnumType2(2, MY_STRING),
    MyEnumType3(3, MY_OTHER_STRING);

    MyEnum(int num, String str) {
      ...
    } 
  }
 ...
}



Related