java enum(枚举)使用详解+ 总结
更新时间:2023-07-31 11:29:01 阅读量: 教育文库 文档下载
- java推荐度:
- 相关推荐
enum 的全称为 enumeration, 是 JDK 1.5 中引入的新特性,存放在 java.lang 包中。
下面是我在使用 enum 过程中的一些经验和总结。
原始的接口定义常量t0120b4adad021155b7
语法(定义)
创建枚举类型要使用 enum 关键字,隐含了所创建的类型都是 java.lang.Enum 类的子类(java.lang.Enum 是一个抽象类)。枚举类型符合通用模式 Class Enumt0164d03035ae0a564c
这段代码实际上调用了7次 Enum(String name, int ordinal):t016ca5b92e4b4fc032
遍历、switch 等常用操作
对enum进行遍历和switch的操作示例代码:t0197b6bb994fbc532dt01f066af42b3ff7eeb
输出结果:t01eda5d88e91ab045f
enum 对象的常用方法介绍
int compareTo(E o)
比较此枚举与指定对象的顺序。
Class getDeclaringClass()
返回与此枚举常量的枚举类型相对应的 Class 对象。
String name()
返回此枚举常量的名称,在其枚举声明中对其进行声明。
int ordinal()
返回枚举常量的序数(它在枚举声明中的位置,其中初始常量序数为零)。
String toString()
返回枚举常量的名称,它包含在声明中。
statict0199a9c6c34e9fda7ft01a922eda6eae02983
输出结果:t010f0cbe3a2a130520
给 enum 自定义属性和方法
给 enum 对象加一下 value 的属性和 getValue() 的方法:t012983f35a5787e609t012983f35a5787e609t0193f60442ef7af12c
输出结果:t013ec4e7867c5b5bdd
EnumSet,EnumMap 的应用t0112d2f68efb6f3be2
原理分析
enum 的语法结构尽管和 class 的语法不一样,但是经过编译器编译之后产生的是一个class文件。该class文件经过反编译可以看到实际上是生成了一个类,该类继承了java.lang.Enum。EnumTest 经过反编译(javap com.hmw.test.EnumTest 命令)之后得到的内容如下:t01ae42148f0d266f44
所以,实际上 enum 就是一个 class,只不过 java 编译器帮我们做了语法的解析和编译而已。
总结
可以把 enum 看成是一个普通的 class,它们都可以定义一些属性和方法,不同之处是:enum 不能使用 extends 关键字继承其他类,因为 enum 已经继承了 java.lang.Enum(java是单一继承)。
正在阅读:
我的阅读之旅作文600字06-15
编制依据及原则(完整版)05-03
推荐:大头菜的做法07-26
液压传动习题705-01
一次难忘的钓虾作文400字06-28
八年级物理上册第4章在光的世界里第5节科学探究凸透镜成像学案(新版)教科版(优选.)08-06
2016西南大学免师硕士课程与教学论12-15
美丽的金沙湖作文800字07-04
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 枚举
- 详解
- 总结
- 使用
- java
- enum
- 幼儿园大班游戏教案(5篇)
- 轮胎的生产日期怎么看原来方法这么的简单
- 利息支出在企业所得税税前扣除的六大注意事项
- Excel常用函数公式大全
- 全省统一鉴定网上报名系统操作手册(报考机构使用)
- 资产折旧、摊销情况及纳税调整明细表怎么填
- 2022年“五法”普法知识竞赛试题(单选)两套
- 股权转让应该交哪些税?
- 广东省继续教育公需课《乡村振兴战略》考试部分试题和答案
- 实习日记5篇实习日记5篇万能500字
- Python--matplotlib绘图可视化知识点整理
- 中共中央八项规定全文
- 微信小程序开发入门教程
- 中华人民共和国物业管理条例全文
- 现金流量表编制方法及计算公式
- 二进制与十进制间的转换方法(图文教程)
- 股权转让应该交哪些税?
- JS截取字符串常用方法详细整理
- 你比划我猜搞笑题目 你说我猜题目大全
- 【图文】科学健走--通用版(1)