初识枚举类

    技术2022-05-20  45

    今天要写的只是一个简单的例子:

    这个是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、枚举类可以有抽象方法,但必须在元素列表声明中实现这些方法。此外,枚举类中还可以声明一些普通的成员变量和方法,如上例所示。


    最新回复(0)