李锋镝的博客

  • 首页
  • 时间轴
  • 说说
  • 读书观影
  • 系列
  • AI工具集
  • 论坛
  • 友圈
    • 友链
    • 朋友圈
    • 游客中心
  • 留言
    • 留言
    • 走心评论
  • 关于
    • 关于本站
    • Now
    • 每日心情
    • 网站地图
    • 网站统计
    • 赞助
  • 星球穿梭
  • 🚇开往
静亦定 动亦定
惟坚韧者始能遂其志
  1. 首页
  2. 原创
  3. 正文

Java枚举梳理总结一

2019年6月19日 273 1 0
本文最后更新于 2019年6月19日,距今已 2698 天,其中的信息可能已经发生变化,请注意甄别。
1.枚举允许继承类吗?
枚举不允许继承类。Jvm在生成枚举时已经继承了Enum类,由于Java语言是单继承,不支持再继承额外的类(唯一的继承名额被Jvm用了)。
2.枚举允许实现接口吗?
枚举允许实现接口。因为枚举本身就是一个类,类是可以实现多个接口的。
3.枚举可以用等号比较吗?
枚举可以用等号比较。Jvm会为每个枚举实例对应生成一个类对象,这个类对象是用public static final修饰的,在static代码块中初始化,是一个单例。
4.可以继承枚举吗?
不可以继承枚举。因为Jvm在生成枚举类时,将它声明为final。
5.枚举可以实现单例模式吗?
枚举本身就是一种对单例设计模式友好的形式,它是实现单例模式的一种很好的方式。
6. 当使用compareTo()比较枚举时,比较的是什么?
枚举类型的compareTo()方法比较的是枚举类对象的ordinal的值。
7. 当使用equals()比较枚举的时候,比较的是什么?
枚举类型的equals()方法比较的是枚举类对象的内存地址,作用与等号等价。

public enum Fruit{
    APPLE(1),ORANGE(2),BANANA(3);
    int code;

    Fruit(int code){
        this.code=code;
    }
}
Enum类有两个成员变量:name和ordinal。其中,name用于记录枚举常量的名字。比如APPLE、ORANGE和BANANA。ordinal用于记录枚举常量在声明时的顺序(从0开始)。比如APPLE是0、ORANGE是1、BANANA是2。
Enum类有一个构造函数,它有两个入参,分别为name和ordianl赋值。
Enum类重写了toString()方法,返回枚举常量的name值。
Enum类重写了equals()方法,直接用等号比较。
Enum类不允许克隆,clone()方法直接抛出异常。(保证枚举永远是单例的)
Enum类实现了Comparable接口,直接比较枚举常量的ordinal的值。
Enum类有一个静态的valueOf()方法,可以根据枚举类型以及name返回对应的枚举常量。
Enum类不允许反序列化,为了保证枚举永远是单例的
Enum.valueOf()返回一个枚举对象,参数不正确则报java.lang.IllegalArgumentException: No enum constant...异常

 

暂时总结这么多,其他的有用到继续补充。

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可
分享到

Java枚举梳理总结一

也可使用浏览器菜单中的「分享」功能

微信扫一扫分享

标签: Enum JAVA
最后更新:2019年6月19日

岁月同一天 11 月 7 日

回望过去的今天,你在写什么

  • AI
    1 年前 2025年11月7日
    DeepSeek本地部署全攻略:从环境搭建到高级应用,打造专属 AI 助手

    DeepSeek 作为国产开源大模型的佼佼者,凭借出色的推理能力、代码生成效率和中文支持,成为很多开发者本地部署的首选。…

相关文章
  • SpringBoot常用注解2025年5月28日
  • 从零搭建Spring Cloud Gateway网关(一)2020年3月18日
  • Java数据类型判断工具类DataTypeUtil2019年9月26日
  • SpringBoot 中内置的 49 个常用工具类2025年5月26日
  • maven依赖本地jar包2025年3月28日

李锋镝

既然选择了远方,便只顾风雨兼程。

打赏 点赞
< 上一篇
下一篇 >
1234567891112131415161718192021222324252627282930313233343536373839404142434446474849505152535455575859606162636465666769727476777879808182858687909293949596979899
取消回复
…

文章评论

还没有评论,快来抢沙发吧~

昨夜星辰昨夜风,画楼西畔桂堂东。
身无彩凤双飞翼,心有灵犀一点通。
隔座送钩春酒暖,分曹射覆蜡灯红。
嗟余听鼓应官去,走马兰台类转蓬。

听点儿音乐吧 朋友~
文章目录
最新 热点 随机
最新 热点 随机
给服务器加了WAF 又一个逆天改命的人:小小徐 AI的生成能力等于生产力吗? NGINX严重漏洞(CVE-2026-15176、CVE-2026-93479、CVE-2026-97205) Kratos-plus v1.1.27更新说明 php2shell远程执行漏洞修复(CVE-2026-109618 和 CVE-2026-109619)
给主题增加了游客中心功能心气没了,干什么都不得劲我觉得是时候公布我的导航网站了给服务器加了WAF游本昌去世关于主题加载速度优化的一点儿小演进
阿里巴巴《Java开发手册》下载 org.apache.ibatis.plugin.Interceptor类详细介绍及使用 分布式服务生成唯一不重复ID(24位字符串) Nginx开启brotli压缩 Java浮点数运算 Redis中缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题
最近评论
fairy 发布于 1 天前(11月06日) 机器人快来我这里吧!
李锋镝 发布于 1 天前(11月06日) 都是机器人,防不住
李锋镝 发布于 1 天前(11月06日) 是的,太烦了
李锋镝 发布于 1 天前(11月06日) 可以同一台服务器
fairy 发布于 1 天前(11月06日) 这流量,好厉害啊。我一年都没那么多
标签聚合
IDEA 架构 AI编程 Redis ElasticSearch 分布式 AI JAVA WordPress Theme JVM 数据库 日常 SQL Spring K8s Claude 多线程 MySQL SpringBoot
友情链接
  • 瓦匠个人小站
  • lijie blog
  • 彬红茶日记
  • Serendipity
  • 皮皮社
  • 哥斯拉
  • 林羽凡
  • 懋和道人
  • Mr.Sun的博客
  • 刘永博客
  • 韩小韩博客
  • 知向前端
  • 志文工作室
  • 老张博客
  • 韩情脉脉
  • sssr7844的博客
  • 搬砖日记
  • 九仞之行
  • Honesty

COPYRIGHT © 2016-2026 lifengdi.com. ALL RIGHTS RESERVED.

lifengdi.com 十年之约虫洞

Domain age badge for lifengdi.com

Theme Kratos-plus By Dylan Li

津ICP备2024022503号-3

京公网安备11011502039375号