1. 程式人生 > >java的列舉型別(enum)例項

java的列舉型別(enum)例項

列舉型別   實際上是我們在jdk1.5之前定義的 public static final XXX的常量

注意:

1)如果打算自定義自己的方法,那麼必須在enum例項序列的最後新增一個分號,而且Java要求必須先定義enum例項

2)所有的列舉都繼承自java.lang.Enum類。由於Java不支援多繼承,所以列舉物件不能再繼承其他類,但是可以實現介面

3)可以在列舉類裡面新增  成員變數(必須為private)   構造方法(必須為private)  普通方法(可以隨意)

例子如下:

CoffeeSize列舉類:

public enum CoffeeSize
{
    BIG("大杯",1),MIDDEL("中杯",2),SMALL("小杯",3);
   
    private int index;
    private String name;
   
    //default constructor
    private CoffeeSize()
    {
        System.out.println("--"+this.name());
    }
   
    private CoffeeSize(String name,int index)
    {
        this.name = name;
        this.index = index;
    }

    public int getIndex()
    {
        return index;
    }

    public void setIndex(int index)
    {
        this.index = index;
    }

    public String getName()
    {
        return name;
    }

    public void setName(String name)
    {
        this.name = name;
    }

    @Override
    public String toString()
    {
        // TODO Auto-generated method stub
        return this.index+"__"+this.name;
    }
   
    public void print()
    {
        System.out.println(this.index+":"+this.name);
    }
   
   
   
}

Coffee類:

public class Coffee
{

    public static void main(String[] args)
    {
      
       for(CoffeeSize element : CoffeeSize.values())
       {
           System.out.println(element);
       }
      
       CoffeeSize bigSize;
       bigSize = CoffeeSize.BIG;
      
       bigSize.print();
      
       bigSize.setName("歡樂杯");
       bigSize.print();
    }

}