您的位置:首页 > 编程语言 > Java开发

java 枚举

2017-09-06 21:48 197 查看

1、简介

1.1 概述

jdk1.5引入枚举,与类相似,只是类使用class修饰,枚举使用enum修饰,且不能被继承

定义为:

enum Data {A, B, C}


主要的方法有:

values() 返回enum实例数组

ordinal() 返回元素声明时的顺序

name() 返回元素的名字

valueOf() 根据名字,返回枚举实例

1.2 特性

1.2.1 enum除了不能继承之外,与普通类相同,枚举有自己的方法、构造方法等。

enum E{
A("a"), B("b"), C("c");

public String desc;
private E(String str){  //构造方法
this.desc = str;
}
}
public class Test{
public static void main(String[] args) {
System.out.println("==>" + E.A.desc);//desc即时构造传参
}
}


1.2.2 枚举不能继承类,但是可以实现接口

1.2.3 枚举可以实现各自的方法,并覆盖普通的方法

enum E{
A{
//重写,A的实现
@Override
void test() {
super.test();
}
}, B{
@Override
//重写,B的实现
void test() {
super.test();
}
};
//E的test方法将被覆盖
void test(){}
}


1.2.3 EnumSet

用于存储枚举,内部使用位操作,效率很高。

1.2.4 EnumMap

以Enum做key。值用数组存储,默认是null值。

参考《java编程思想 19章》简化版
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: