No compila enum (class expected)

santos.r09
05 de Septiembre del 2009
Hola estoy estudiando Java, el libro de Katy Sierra para la certifiación SCJP, estaba haciendo uno de los ejemplos que viene en el libro, relacionado con "ENUM" pero a la hora de compilar me dice: "Class or interface expected"
No se si estoy declarando mal el enum o que pasa, ya revisé todo y parece que la sintaxis esta bien, esta de acuerdo al libro, El enum esta declarado fuera de la clase.
Aquí el códgio:

public class Coffee {
CoffeSize size;

public static void main(String[]args) {
Coffee drink1= new Coffee();
drink1.size = CoffeSize.BIG;

Coffee drink2 = new Coffee();
drink2.size = CoffeSize.OVERWHELMING;

System.out.println(drink1.size.getOunces());
}

}

enum CoffeSize {
BIG(8),
HUGE(10),
OVERWHELMING(16)
{ //Inicia codigo para la constante OVERWHELMING
public String getLidCode() { // Se sobrescribe el metodo de CoffeSize
return "A";
} // Termina Metodo sobreescrito
}; //Termina bloque OVERWHELMING "constant specific class body"
//Se requiere punto y coma cuando ay mas codigo despues

CoffeSize (int ounces) { // Este es el constructor con las variables de tipo int y ounces
this.ounces = ounces;
}

private int ounces; //declara la variable ounces como privada

public int getOunces(){
return ounces;
}

public String getLidCode { // Este Metodo es del Enum CoffeSize, y es sobrescrito en OVERWHELING
return "B";
}
} // Termina Enum
// Aqui Termina el Archivo .java

El archivo se llama Coffee.java

Gracias

Leonrdo
05 de Septiembre del 2009
Hola lo acabo de probar con java jdk 1.5 y eclipse 3.2 y funciona perfectamente. te recomiendo que chequees la version de jdk que usas! saludos

santos.r09
05 de Septiembre del 2009
Gracias Leonardo, tienes razón, estaba totalmente seguro que tenía la version 1.5, pero ayer probé compilarlo en el NetBeans y ahi si se ejecutó bien, regreso a la carpeta de donde intentaba compilar (desde consola) y ahí tengo la version 1.4, que novatada la mía.
Gracias