Se io dichiarare una variabile prima o senza dichiarare le costanti enum in questo modo:Perché le costanti enum devono essere dichiarate prima di qualsiasi altra variabile e dichiarazione dei metodi in un tipo enum?
enum MyEnum
{
int i = 90;
}
mostra seguente errore di compilazione.
MyEnum.java:3: <identifier> expected
{
^
MyEnum.java:4: ',', '}', or ';' expected
int i = 90;
^
MyEnum.java:4: '}' expected
int i = 90;
^
MyEnum.java:5: class, interface, or enum expected
}
^
4 errors
Ma se io dichiaro una costante enum prima di dichiarare i
allora compila bene.
Anche il seguente codice compilerà bene:
enum MyEnum
{
;//put a semicolon
int i = 90;
}
Perché java enum è stato progettato in questo modo?
In primo luogo, 'enum' è progettato per essere * un'enumerazione * di più di zero elementi. Questo design è perfettamente valido. –
Perché è obbligatorio avere almeno una costante enum. Perché è così che la sintassi viene definita nella specifica del linguaggio Java. Perché. – EJP
@EJP Ma in seguito non ho dichiarato alcuna costante enum ma ho semplicemente aggiunto un punto e virgola prima di dichiarare una variabile. Non sta andando contro il mandato che un Enum dovrebbe avere almeno un enum costante? –