初識枚舉類

來源:互聯網
上載者:User

今天要寫的只是一個簡單的例子:


這個是MyEnum.java檔案的內容:

/*

 * To change this template, choose Tools | Templates

 * and open the template in the editor.

 */


package myenum;


/**

 *

 * @author long

 */

//定義枚舉類

public enum MyEnum

{

LOGIN("login"),REGISTER("register"),LOGOUT("logout"),ONLINECHECK("checkonlie");


    private String name;


    private MyEnum(String name)

    {

        this.name = name;

    }

}


 //或者可以這樣寫這個類:

//public enum MyEnum

//{

//LOGIN,REGISTER,LOGOUT,ONLINECHECK;

//}


===================================================

這個是Main.java檔案的內容:

/*

 * To change this template, choose Tools | Templates

 * and open the template in the editor.

 */


package myenum;


/**

 *

 * @author long

 */

public class Main {


    /**

     * @param args the command line arguments

     */

    public static void main(String[] args) {

        // TODO code application logic here

        //這裡是枚舉類和switch語句的結合

       // MyEnum operate = MyEnum.valueOf("LOGIN");

        MyEnum operate = MyEnum.LOGIN;

        switch (operate)

        {

        case LOGIN:

            System.out.println("this is login");

            break;

        case REGISTER:

            System.out.println("this is register");

            break;

        case LOGOUT:

            System.out.println("this is logout");

            break;

        case ONLINECHECK:

            System.out.println("this is onlinecheck");

            break;

        default:

             System.out.println("there is no enum  value!");

            break;

        }

        //一下兩種方法得出的值是一樣的

        System.out.println(MyEnum.REGISTER.toString());

        System.out.println(MyEnum.valueOf("LOGOUT"));

    }

}


=============

使用枚舉類有幾個要注意得地方:


1、枚舉元素列表必須寫在枚舉類的最前面,每個元素之間用逗號隔開,元素列表結束位置後若沒有其他內容,則可以不寫分號,否則必須要寫。

2、枚舉類中所有的構造器是private的,外部程式不能夠建立枚舉類的執行個體。枚舉類中可以顯式的指明調用哪個構建器,如MEMBER和MEMBER()這兩種元素列表聲明是等價的,都是調用預設的構建器,而MEMBER("普通會員")則是顯式的指明程式調用第二個構建器.

3、枚舉類可以有抽象方法,但必須在元素列表聲明中實現這些方法。此外,枚舉類中還可以聲明一些普通的成員變數和方法,如上例所示。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.