5 Replies Latest reply: Apr 21, 2009 10:07 AM by 807588 RSS

    enums

    807588
      This is the example given in the scjp 6 by Kathy. But this is not compiling at System.out.println(drink1.size.getOunces());. Please explain

        
      
      enum CoffeeSize {
      // 8, 10 & 16 are passed to the constructor
      BIG(8), HUGE(10), OVERWHELMING(16);
      CoffeeSize(int ounces) { // constructor
      this.ounces = ounces;
      }
      private int ounces; // an instance variable
      public int getOunces() {
      
      return ounces;
      }
      }
      class Coffee {
      CoffeeSize size; // each instance of Coffee has an enum
      public static void main(String[] args) {
      Coffee drink1 = new Coffee();
      drink1.size = CoffeeSize.BIG;
      Coffee drink2 = new Coffee();
      drink2.size = CoffeeSize.OVERWHELMING;
      System.out.println(drink1.size.getOunces()); // prints 8
      for(CoffeeSize cs: CoffeeSize.values())
      System.out.println(cs + " " + cs.getOunces());
      }
      }