Brian Goetz在消息“ 增强枚举-用例 ”中写道:“我们希望就现在实现的功能[ 增强枚举 ]获得用户反馈。” 他陈述了他的信息的第一个目的:“开始工作,这是一些通用枚举可能有用的典型用例。” 所提供的两个示例中的第一个示例是重构com.sun.tools.javac.code.Dynamic类及其八个工厂方法 , 该示例使用动态枚举将具有嵌套Kind枚举的不同实例的BootstrapArgument的不同实例返回到单个方法中。

Goetz提供的增强枚举的可能应用的第二个用例示例是命令行解析,在命令行解析中,枚举用于表示参数的数据类型。 Vicente Romero回答了Goetz的消息,并提供了两个示例 ,其中列举了应用增强型枚举的地方:“枚举常量之间的代码共享”和“更清晰的键入功能”。

Goetz鼓励其他人为增强型枚举提供更多用例,“请贡献他人,以及JDK中可以使用此功能重构代码的位置。” 他总结道:“如果有人想尝试并提供他们在JDK或自己的代码库中应用(或错误应用)此功能的经验,那将不胜感激……”

翻译自: https://www.javacodegeeks.com/2017/04/use-cases-java-enhanced-enums.html

Java增强枚举的用例相关推荐

  1. java单例枚举_Java增强枚举的用例

    java单例枚举 Brian Goetz在消息" 增强枚举-用例 "中写道:"我们希望就现在实现的功能[ 增强枚举 ]获得用户反馈." 他陈述了他的消息的第一个 ...

  2. java enum优点_你需要关注的 Java Enum 枚举的几个细节

    枚举是一个非常古老的语言特性,用来实现具名的有限集合,在 C/C++ 中使用广泛.而 Java 在 Java SE5 才引入枚举.也许语言设计者觉得既然是后引入该特性,那么一定要在这个特性上支持比其他 ...

  3. 深度分析Java的枚举类型——枚举的线程安全性及序列化问题

    点击关注,快速进阶高级架构师 作者:Hollis 写在前面:Java SE5提供了一种新的类型-Java的枚举类型,关键字enum可以将一组具名的值的有限集合创建为一种新的类型,而这些具名的值可以作为 ...

  4. 19、java中枚举

    枚举是什么? 枚举就是将一个有限集合中的所有元素列举出来,在java中使用可以使用enum关键字来声明一个枚举类. 为什么使用枚举? 之前当用到一些常量时,便临时声明一个,这样使得代码看起来很乱,这里 ...

  5. Java中枚举的线程安全性及序列化问题

    转载自  Java中枚举的线程安全性及序列化问题 Java SE5提供了一种新的类型-Java的枚举类型,关键字enum可以将一组具名的值的有限集合创建为一种新的类型,而这些具名的值可以作为常规的程序 ...

  6. java 修改 枚举类字段_枚举枚举和修改“最终静态”字段的方法

    java 修改 枚举类字段 在本新闻通讯中,该新闻通讯最初发表在Java专家的新闻通讯第161期中,我们研究了如何使用sun.reflect包中的反射类在Sun JDK中创建枚举实例. 显然,这仅适用 ...

  7. linux 单例模式改密码,Java 利用枚举实现单例模式

    引言 单例模式比较常见的实现方法有懒汉模式,DCL模式公有静态成员等,从Java 1.5版本起,单元素枚举实现单例模式成为最佳的方法. Java枚举 基本用法 枚举的用法比较多,本文主要旨在介绍利用枚 ...

  8. Java高新技术 枚举

      Java高新技术   枚举 知识概要: (1)为什么要有枚举 (2)枚举的示例 (3)枚举的应用 (4)枚举的高级应用 (1)为什么需要枚举 问题:要定义星期几或性别的变量,该怎么定义? 假设 ...

  9. 深度分析 Java 的枚举类型:枚举的线程安全性及序列化问题(转)

    写在前面: Java SE5 提供了一种新的类型 Java的枚举类型,关键字 enum 可以将一组具名的值的有限集合创建为一种新的类型,而这些具名的值可以作为常规的程序组件使用,这是一种非常有用的功能 ...

最新文章

  1. JAVA好书之《深入理解Java虚拟机》
  2. 扩展屏幕没有连接,但程序窗口还在扩展屏幕上,在看不到这个屏幕的情况下,把程序窗口拉回来的方法
  3. linux配置python_Linux--linux下配置安装python3
  4. 机器学习研究与开发平台的选择
  5. Java内部类与静态内部类
  6. JS中对于email格式的判断
  7. 关于Oracle数据库中行迁移/行链接的问题(一)
  8. 课堂练习 5-22 团队如何做决定
  9. android底层按键监听,Android应用中Back键的监听及处理实例
  10. 微信自定义tabbar有小红点_自定义微信小程序tabBar组件上边框的颜色
  11. 谷歌服务器——为什么选择Jetty?
  12. 【NOIP2003】【Luogu1044】栈
  13. Go专栏“改善Go语言编程质量的50个有效实践”上线了
  14. 音频帧率计算方法(只需要知道 采样率 和 一帧采样数 )
  15. xsmax无法进入dfu模式_iPhone XR/XS/XS Max 如何进入恢复模式或 DFU 模式?
  16. c语言中fabs是什么意思,c语言fabs是什么意思_后端开发
  17. 基本表改变视图不改变为什么_为什么说10万本金以下穷人玩股票一般都会赔?不改变穷人思维,还不如退出股市...
  18. python tkinter treeview制作_python-3.x – Tkinter Treeview标题样式
  19. 微信小程序使用三元运算符
  20. 处理器_深度学习及 KPU 基础知识

热门文章

  1. Spring 事务原理和使用
  2. XML解析(二),DOM解析XML
  3. 最新后端架构师技术图谱
  4. Spring Boot Server容器配置
  5. 阿里面试回来,想和 Java 程序员谈一谈
  6. layui结合ajax实现下拉菜单联动效果
  7. EF框架中,在实体中手动更新字段,数据库数据未同步到程序中应该怎么解决呢?
  8. Python解决中文乱码问题
  9. 约瑟夫(环)问题(Josephu)(单向环形链表)
  10. maven(5)坐标和依赖