enum枚举java【java,enum(枚举)使用详解+,总结】

  • 格式:docx
  • 大小:12.56 KB
  • 文档页数:3

下载文档原格式

  / 3
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

enum枚举java【java,enum(枚举)使用详解+,总

结】

enum的全称为enumeration,是JDK1.5中引入的新特性,存放在ng包中。

原始的接口定义常量

语法(定义)

创建枚举类型要使用enum关键字,隐含了所创建的类型都是ng.Enum类的子类(ng.Enum是一个抽象类)。枚举类型符合通用模式ClassEnum

这段代码实际上调用了7次Enum(Stringname,intordinal):

遍历、switch等常用操作

对enum进行遍历和switch的操作示例代码:

输出结果:

enum对象的常用方法介绍

intcompareTo(Eo)

比较此枚举与指定对象的顺序。

ClassgetDeclaringClass()

返回与此枚举常量的枚举类型相对应的Class对象。

Stringname()

返回此枚举常量的名称,在其枚举声明中对其进行声明。

intordinal()

返回枚举常量的序数(它在枚举声明中的位置,其中初始常量序数为零)。

StringtoString()

返回枚举常量的名称,它包含在声明中。

static

输出结果:

给enum自定义属性和方法

给enum对象加一下value的属性和getValue()的方法:

输出结果:

EnumSet,EnumMap的应用

原理分析

enum的语法结构尽管和class的语法不一样,但是经过编译器编译之后产生的是一个class文件。该class文件经过反编译可以看到实际上是生成了一个类,该类继承了ng.Enum。EnumTest经过反编译(javapcom.hmw.test.EnumTest命令)之后得到的内容如下:48f0d266f44.png"data-size="undefined"/>

所以,实际上enum就是一个class,只不过java编译器帮我们做了语法的解析和编译而已。

总结

相关主题