Coffeesize (int ounces) { this.ounces=ounces; } private in ounces; public int getounces() { return ounces; } } class Coffee { Coffesize size; public Staic........................... Coffe drink1=new Coffee(); drink1.size=Cofeesize.BIG;//this statement calls the constructor altough integer is not passed how
You never call the destructor of an enum explicitly.
An enum is a kind of class, of which only a fixed number of instances exist: the constants that you defined in the enum. So in your case, there are two instances, referred to by BIG and HUGE.
You can re-write an enum as a regular class; maybe this will help you to understand what happens. It looks more or less like this:
But it doesn't work. You are not calling its constructor, but its "ounces" attribute, which you have quite correctly given private access. Your app won't compile. You can read all about enums here in the Java tutorial.
CR
CAUTION! Do not touch the blades on your neck propeller while they are active. Tiny ad:
a bit of art, as a gift, that will fit in a stocking