Java枚举类型怎样经常使用 (java枚举类型enum用法和写法)
本文目录导航:
Java枚举类型怎样经常使用
举(enum)类型是Java 5新增的个性,它是一种新的类型,准许用常量来示意特定的数据片断,而且所有都以类型安保的方式来示意。
1、常量的经常使用 在JDK1.5之前,咱们定义常量都是:public static fianl....。
如今好了,有了枚举,可以把关系的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。
总结:1、枚举的实质是类,在没有枚举之前,依然可以依照java最基本的编程手腕来处置须要用到枚举的中央。
枚举屏蔽了枚举值的类型消息,不像在用public static final定义变量必定指定类型。
枚举是用来构建常量数据结构的模板,这个模板可裁减。
枚举的经常使用增强了程序的强健性,比如在援用一个不存在的枚举值的时刻,编译器会报错。
枚举的更多用法还须要在开发中去钻研发明,Java5、Java6参与了不少新的个性,技术在更新,对程序员来说就要学习,假设你热爱java的话。
否则他人用到新个性的代码你看疑问,那才叫郁闷。
2、枚举在Java家族中只占了很小的一块比重,所以我在名目中用枚举的中央不是很多,毕竟,一个名目是很多人开发保养的,用一个生疏的物品,会给其余的共事形成浏览艰巨。
所以常量大都是用public static final 来定义的。
枚举类 (Enum)——团体修炼
枚举类 (Enum)枚举类是一种在特定状况下,用于示意有限且固定数量的实例对象的不凡类。
在Java中,当一个类的实例对象数量有限且固定,如节令类,其实例对象只要春、夏、秋、冬时,称之为枚举类。
经过经常使用enum主要字定义枚举类,其位置与class、interface相反。
每个枚举类实例(枚举值)都是public static final类型,且必定在枚举类的第一行显式列出,确保枚举类的实例化。
在IDEA等开发工具中,假设枚举值不在第一行,将不可经过语法审核。
编译枚举类生成的class字节码文件中,自动结构函数是私有的,不可从外部调用。
枚举类承袭自类,并自动成功了和接口。
在Java源文件中,最多只能有一个public类型的枚举类,并且该类的类名与源文件名相反。
枚举类成员包括:成员变量、成员方法、结构器(结构器只能经常使用private访问润色符,不可从外部调用)。
结构器只在结构枚举值时被调用。
枚举类经常使用案例:定义一个示意一周的枚举类:WeekEnum成员变量、成员方法、结构器和get、set方法等。
枚举类中罕用方法:1. compareTo方法:用于比拟两个枚举对象的顺序,前往正整数、负整数或零。
2. name()方法:前往枚举实例的称号。
3. values()方法:前往一个蕴含一切枚举值的数组。
4. toString()方法:前往枚举值的称号,更罕用。
5. ordinal()方法:前往枚举值的索引值,从0开局。
6. valueOf()方法:前往指定称号的枚举常量。
6. equals()方法:比拟两个枚举类对象的援用。
枚举类成功接口:与个别类一样,枚举类可以成功一个或多个接口。
蕴含形象方法的枚举类:定义一个示意运算的枚举类,成功calculate()形象方法。
常量接口和枚举类的区别:枚举类处置了常量接口不可限度承袭、参数类型弱、功能优化受限以及代码更新疑问。
好处:1. 更便捷的定义方式,无需手动参与枚举值。
2. 编译时防止弱类型失误。
3. 自带内置方法,如values()、ordinal()、compareTo()等。
缺陷:1. 不能被承袭或经过extends承袭其余类。
2. 不可裁减枚举值。
倡导经常使用枚举的状况:当一切或者的团圆值已知时,经常使用枚举类。
例如HTTP照应代码、操作符等。
总结:枚举类是用于示意有限且固定数量实例对象的不凡类。
经过正当经常使用枚举,可以提高代码的可读性、强健性和可保养性。
Java干货 | Java申明枚举类型、枚举(enum)类、EnumMap 与 EnumSet
本文详述了Java中的枚举类型、枚举类、EnumMap与EnumSet的经常使用与个性,联合详细名目案例,确保读者能深化了解并灵敏运用这些概念。
首先,咱们引见枚举类型。
经过Java的主要字enum,申明枚举类型时,实例被视为固定的且有限的常量。
例如,申明了一个枚举类型Weekday,蕴含一周七天的枚举值。
值得留意的是,枚举值必定所有大写,表现其常量性质。
接着,论述枚举类。
它是一种不凡的类方式,用于成功枚举类型。
枚举类可以领有属性、方法及结构方法,增强枚举的适用性。
例如,申明了一个枚举类Weekday,蕴含一周七天的枚举值,每个枚举值具备中文和英文称号,经过结构方法初始化属性,提供getter方法。
进一步引见EnumMap。
这是一种不凡的Map,其键必定为枚举类型。
经过创立EnumMap,可以轻松地统计枚举类型的数量或关联数据。
例如,创立一个EnumMap,键为枚举类型Weekday,值为字符串类型,经过put方法参与元素,经常使用get方法失掉元素。
留意,EnumMap中的元素依照枚举值的顺序陈列。
之后,解释EnumSet。
它是不凡的Set,元素必定为枚举类型。
例如,创立一个EnumSet,蕴含一周上班日的枚举值,经常使用方法创立蕴含指定范畴的EnumSet。
雷同,EnumSet中的元素依照枚举值的顺序陈列。
在名目案例中,经常使用枚举类型示意酒店预订系统的房间类型和订单形态。
申明RoomType和OrderStatus枚举类型,区分示意房间类型和订单形态。
每个枚举值具备一称号,经过结构方法初始化称号,并提供getter方法。
在预订系统中,应用EnumMap统计房间类型和订单形态的数量,经常使用EnumSet示意可用的房间类型。
提供bookRoom和updateOrderStatus方法,区分用于预订房间和更新订单形态。
最后,罗列一些留意事项。
在枚举类型中,枚举值必定为常量,因此必定所有大写。
枚举类具备与个别类相似的个性和方法,可裁减枚举的经常使用场景。
EnumMap和EnumSet中的元素顺序遵照枚举值的顺序。
经过正当运用枚举类型、枚举类、EnumMap和EnumSet,可以优化代码的可读性和可保养性。
总结,本文经过详细解说和实例展示,旨在协助读者把握Java中枚举类型、枚举类、EnumMap与EnumSet的经常使用方法和留意事项。
在实践名目中,灵敏运用这些概念,能够有效提高代码品质。