Java中枚举类的示例分析
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,这篇文章将为大家详细讲解有关Java中枚举类的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、枚举类的使用1.枚举类的理解:类的对象只有有限个,确定的。我
千家信息网最后更新 2025年02月01日Java中枚举类的示例分析一、枚举类的使用
二、如何定义枚举类
这篇文章将为大家详细讲解有关Java中枚举类的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
一、枚举类的使用
1.枚举类的理解:类的对象只有有限个,确定的。我们称此类为枚举类
2.当需要定义一组常量时,强烈建议使用枚举类
3.如果枚举类中只有一个对象,则可以作为单例模式的实现方式。
二、如何定义枚举类
方式一:JDK5.0之前,自定义枚举类
public class SeasonTest { public static void main(String[] args) { Season spring = Season.SPRING; System.out.println(spring); }} class Season { //1.声明Season对象的属性:private final修饰 private final String seasonName; private final String seasonDesc; //2.私有化类的构造器,并给对象属性赋值 private Season(String seasonName, String seasonDesc) { this.seasonName = seasonName; this.seasonDesc = seasonDesc; } //3.提供当前枚举类的对各对象:public static final的 public static final Season SPRING = new Season("春天", "春暖花开"); public static final Season SUMMER = new Season("夏天", "夏日炎炎"); public static final Season AUTUMN = new Season("秋天", "秋高气爽"); public static final Season WINTER = new Season("冬天", "冰天雪地"); //4.其他诉求1: 获取枚举类对象的属性 public String getSeasonName() { return seasonName; } public String getSeasonDesc() { return seasonDesc; } //4.其他诉求2:提供toString() @Override public String toString() { return "Season{" + "seasonName='" + seasonName + '\'' + ", seasonDesc='" + seasonDesc + '\'' + '}'; } }
方式二:JDK5.0之后,可以使用enum关键字定义枚举类
public class SeasonTest1 { public static void main(String[] args) { Season1 summer = Season1.SUMMER; System.out.println(summer); System.out.println(Season1.class.getSuperclass());//java.lang.Enum //values(): Season1[] values = Season1.values(); for (int i = 0; i < values.length; i++) { System.out.println(values[i]); } //valueOf(String objName):返回枚举类中对象时objName的对象。 Season1 winter = Season1.valueOf("WINTER"); //如果没有objName的枚举类对象,则抛异常:IllegalArgumentException// Season1 winter = Season1.valueOf("WINTER1"); System.out.println(winter);// winter.show(); } //使用enum关键字定义枚举类 enum Season1 { //1.提供当前枚举类的对象,多个对象之间用","隔开,末尾对象";"结束 SPRING("春天", "春暖花开"), SUMMER("夏天", "夏日炎炎"), AUTUMN("秋天", "秋高气爽"), WINTER("冬天", "冰天雪地"); //1.声明Season对象的属性:private final修饰 private final String seasonName; private final String seasonDesc; //2.私有化类的构造器,并给对象属性赋值 private Season1(String seasonName, String seasonDesc) { this.seasonName = seasonName; this.seasonDesc = seasonDesc; } //4.其他诉求1: 获取枚举类对象的属性 public String getSeasonName() { return seasonName; } public String getSeasonDesc() { return seasonDesc; }
使用enum关键字定义的枚举类实现接口的情况
情况一:实现接口,在enum类中实现抽象方法
情况二:让枚举类的对象分别实现接口中的抽象方法
public class SeasonTest1 { public static void main(String[] args) { //values(): Season1[] values = Season1.values(); for (int i = 0; i < values.length; i++) { System.out.println(values[i]); values[i].show(); } } interface Info { void show(); } enum Season1 implements Info { SPRING("春天", "春暖花开") { @Override public void show() { System.out.println("春天在哪里"); } }, SUMMER("夏天", "夏日炎炎") { @Override public void show() { System.out.println("宁夏"); } }, AUTUMN("秋天", "秋高气爽") { @Override public void show() { System.out.println("秋天不回来"); } }, WINTER("冬天", "冰天雪地") { @Override public void show() { System.out.println("大约在冬季"); } }; private final String seasonName; private final String seasonDesc; private Season1(String seasonName, String seasonDesc) { this.seasonName = seasonName; this.seasonDesc = seasonDesc; } public String getSeasonName() { return seasonName; } public String getSeasonDesc() { return seasonDesc; }}
关于"Java中枚举类的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
对象
属性
冰天雪地
春暖花开
秋高气爽
关键
关键字
冰天
夏日
情况
接口
方式
篇文章
雪地
诉求
示例
分析
只有
方法
更多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
三门峡华太通讯网络技术
国企的软件开发是什么样的
腾讯云管理别的服务器
软件开发费用税
网络安全关键技术七项
最近关于网络安全的新闻感受
云算力服务器
当今网络技术流行趋势
rj45服务器接口
s的服务器
数据库应用技术总结与体会
校园网络安全文化节
北京的数据库营销企业
精益软件开发七条原则
清远通信软件开发代理价格
交换机是不是服务器
我是网络安全小卫士文章
企业网络安全的内容
大专计算机网络技术好吗
天津浪潮软件开发薪资福利
软件开发派遣
计算机三级网络技术难吗
CT软件开发
网络安全的命脉企业辰安科技
软件开发属于销售还是服务
鹿泉区新时代软件开发
网络安全文明上网的字
淄博联想服务器代理在哪里
网络技术买什么电脑好
广东网络技术转让包括什么