1、枚举是一组常量的集合。还可以看成包含有限特定的对象。

2、自定义枚举的步骤:

  • 将构造器私有化private
  • 将get方法拿掉
  • 在类的内部直接创建固定的对象,比如:
  • public static Season SPRING = new Season("春天","温暖");
  • 使用:Season.SPRING,这个使用时最重要的
  • 优化:public final static Season SPRING = new Season("春天","温暖");

3、final修饰的变量一般都是大写。

4、在本类创建对象



使用enumeration关键字实现枚举

1、使用关键字enum替代class。使用这个关键字后默认继承Enum类,因此枚举类不能在继承其他的类了。但是可以实现接口。

2、常量名(实参列表):SPRING("春天","温暖");直接和构造器匹配。有多个常量对象。中间用,号间隔。

eg:

//常量对象要写在最前面
SPRING("春天","温暖"),WINTER("冬天","冷");
private String name ;
private String  desc;//下面就是构造器

3、注意事项

  • 使用enum关键字创建枚举类的时候,会默认继承Eunm类。
  • 如果使用无参构造器,后面的括号可以不写。
  • 枚举之间用,好分隔。
  • 枚举对象放在行首。
  • 枚举对象是静态性质的,所以我们可以知道要是赋值的话其实是一个地址。

4、常用的方法

 增强for循环:

for (int i :nums){sout("i = " + i);
}//就是将数组中nums的值取出来赋值给i,知道取出最后一个i。
package enumeration;public class eum01 {public static void main(String[] args) {//给他一个索引Season spring = Season.SPRING;//给他一个索引,觉得System.out.println(spring.name());System.out.println("次序  " + spring.ordinal());System.out.println("######");final Season[] values = Season.values();//遍历枚举类中的信息for(Season i :values){System.out.println(i);}//增强for循环final Season spring1 = Season.valueOf("SPRING");System.out.println(Season.SPRING.compareTo(Season.SUMMER));//Season.SPRING   换成上面的spring也是可以的,其实还是最底层的东西啊。//做减法}
}enum Season{SPRING("春天","我爱你春天"),SUMMER("夏天","夏天的风吹动");private String name;private String dsc;@Overridepublic String toString() {return "Season{" +"name='" + name + '\'' +", dsc='" + dsc + '\'' +'}';}Season(String name, String dsc) {this.name = name;this.dsc = dsc;}
}

了解什么是枚举(enumeration)相关推荐

  1. C++ 语言枚举 (enumeration, enum)

    C++ 语言枚举 (enumeration, enum) 1. enum in C++ Enumeration (enum) is a user-defined datatype (same as s ...

  2. Java中的枚举(Enumeration)

    Enumeration接口中定义了一些方法,通过这些方法可以枚举(一次获得一个)对象集合中的元素. 这种传统接口已被迭代器取代,虽然Enumeration 还未被遗弃,但在现代代码中已经被很少使用了. ...

  3. [COURSE_PTHE] 4. 枚举

    1. 简介:枚举(Enumeration) 下面课程会介绍到基于NetBios.TCP/IP.谷歌.LDAP.端口分析工具及其他途径来枚举并揭示网络信息. 2. 框架 该视频会介绍枚举作为渗透测试中的 ...

  4. java的枚举类型是什么_什么是枚举(java枚举类型enum用法)

    最佳回答 枚举 1.枚举 (enumeration) 值类型的一种特殊形式,它从 System.Enum 继承,并为基础基元类型的值提供备用名称.枚举类型有名称.基础类型和一组字段.基础类型. &qu ...

  5. 「UG/NX」BlockUI 枚举Enum

    目录 控件说明 界面效果 公有属性 对话框标题 DialogLabel(仅创建) 控件灰显 Enable 分组 Group(仅创建) 控件显隐 Show 控件标题 Label 国籍文本 AllowIn ...

  6. Enumeration

    这里是修真院后端小课堂,每篇分享文从 [背景介绍][知识剖析][常见问题][解决方案][编码实战][扩展思考][更多讨论][参考文献] 八个方面深度解析后端知识/技能,本篇分享的是: [ Enumer ...

  7. 2018-5-21关于c里枚举 没意思,不好玩 还有UB系列

    /*我怀疑我学的是假枚举,对于枚举唯一感觉就是 enum sm { sm1,sm2,sm3}这样子的.在我眼里这个东西好像并没有什么用属于和共用体union一样的东西,边看别人博客边写代码边实验的我帮 ...

  8. c++ enum 给定类型_讲解C++中的枚举类型以及声明新类型的方法

    C++枚举类型如果一个变量只有几种可能的值,可以定义为枚举(enumeration)类型.所谓"枚举"是指将变量的值一一列举出来,变量的值只能在列举出来的值的范围内.声明枚举类型用 ...

  9. c++知识点总结--共用体--枚举

    共用体 –关键字-- union –是一种数据格式,能够存储不同的数据类型,但同时只能存储其中一种;且共用体的长度为最大成员的长度; //共用体声明: union one3all { int int_ ...

  10. C++enum枚举类型用法

    枚举 C++的enum工具提供了另一种创建符号常量的方式,这种方式可以 .代替const.它还允许定义新类型,但必须按严格的限制进行.使用enum的句法与使用结构相似.例如: enum color { ...

最新文章

  1. 调用bat文件执行java文件
  2. web farm 讨论引出
  3. js中浮点型运算 加减乘除
  4. linux命令小常识
  5. 企业资源计划软件 业务知识点汇编整理
  6. linux32位运行64位程序,32位windows下可以运行的程序在64位linux下报错
  7. pageable设置size_总结SpringBoot使用Pageable实现分页源码
  8. 《相关性准则——大数据时代的高效能之道》一一2.3 数字信息
  9. 20175212 《Java程序设计》第2周学习总结
  10. POJ--3278 Catch That Cow
  11. Oracle 11g SQL基础入门系列培训-小布作品
  12. Python生信练习——hg38每条染色体基因,转录本的分布
  13. Docker部署免安装版tomcat+mysql+其它乱七八糟软件(包含解释为什么这样安装及同理安装的其他方式)
  14. 基于cv2.VideoCapture 和 OpenCV 得到更快的 FPS之Webcam篇
  15. 均值定理最大值最小值公式_求函数最值问题复杂难算,只要用对方法,考试得分不用愁...
  16. 物联网产业到2023年连接数将突破20亿
  17. 一般早餐店卖不了的包子、馒头是怎么处理的?
  18. EMQX数据持久化到mysql
  19. 11.30黄金伦敦金还会跌吗?黄金原油独家交易指导及策略解套
  20. 使用SPI操作JTAG的两种方案

热门文章

  1. APMServ启动失败解决方法
  2. 计算机无法转换输入发,电脑无法切换输入法怎么办
  3. 如何在Oracle官网下载jdk
  4. 【mysql数据库】通过python 3.7 爬虫获取企查查公开的企业信息,并记录到数据库
  5. pandas添加一行数据的方法
  6. 计算机学院刘岗,中科院金属所刘岗研究员访问城市环境研究所
  7. 详解电容触控芯片与指纹芯片的研发与生产流程
  8. pdps安装oracle12安装,PDPS安装使用过程问题点处理
  9. PS CS5学习(激活序列号后每次重启有要重新输入的问题
  10. 微信JS-SDK实现自定义分享功能,分享给朋友,分享到朋友圈