java之enum(10)

Java
Java enum(枚举)
java之enum(10)_第1张图片

enum是在Java5中引入的新特性。

什么是enum?

enum是Java的一个关键字,用于表示一个固定的常用值,例如每周的天数,每年的月数等等。enum是一种类型。

enum的特性:

  • enum常量隐式的加上了static和final,一旦被创建就无法修改。
  • enum提供的是类型安全的。
  • enum隐式的加上了values()方法,返回一个数组包含所有的enum常量。
  • 两个enum常量可以使用==或equals()方法比较。
  • enum可以用在switch语句中,就像int,String。
  • enum有自己的名称空间。
  • enum可以实现Java接口。
  • 可以在enum中定义构造器。

enum的使用

public enum Sex {
    /**
     * 男
     */
    Man(0),
    /**
     * 女
     */
    Woman(1);

    private int _value;

    public int value(){

        return _value;
    }

    private Sex(int value) {
        _value = value;
    }

    public static Sex valueOf(int value){
        switch(value){

            case 0:
                return Man;

            case 1:
                return Woman;

            default:
                return null;
        }
    }
}

在创建enum常量的时候,可以指定值,但是这个时候,你需要定义一个成员变量构造器,构造器必须是private的,不然会报编译错误。

枚举的本质是类,常量类似于类的对象,属性就相当于是对象的属性。
enum的实例化:

Sex sex = Sex.MAN;

你可能感兴趣的:(java之enum(10))