枚举类的写法

简介: 传统的写一个季节类,然后有一个季节名字和描述,并为属性设置get set方法。在主方法中我们可以随意设置季节名字,但是我们知道这是不合适的,因为我们知道只有4个季节所以我们可以设置为一个枚举类

传统的写一个季节类,然后有一个季节名字和描述,并为属性设置get set方法。


在主方法中我们可以随意设置季节名字,但是我们知道这是不合适的,因为我们知道只有4个季节


所以我们可以设置为一个枚举类(只读不改)


枚举


是一组常量的集合,是一种特殊类,只包含一组有限的特定对象。


枚举的2种实现方式


(1)自定义类实现

1.将构造器私有化,防止实例化对象

2.去除set方法,保留get方法,防止属性被修改

3.在该类直接创建固定的公有静态的该类对象,有几个枚举就创建几个对象(即使构造器私有,在该类内部可以访问)

4.重写toString方法,然后打印对象即可输出内容

5.优化:使用静态属性会导致类的加载,所以可以加入final修饰符,优化代码,不会导致类的加载

public static Season SPRING=new Season("春天","温暖");
...
...
public static Season WINTER=new Season("冬天","寒冷");

(2)enum关键字


1.用enum代替class


2.常量名(实参列表)


3.多个常量用逗号间隔,最后一个带分号


4.定义的枚举常量必须写在类内部的最前面


5.构造器必须为私有


6.用enum关键词后,就不可以继承其他类了,因为会隐式继承Enum类,单继承机制可以实现接口


7.里面的常量都是public static final

目录
相关文章
|
2月前
属性的写法
属性的写法
|
9月前
|
分布式计算 Java 数据安全/隐私保护
Kotlin 学习笔记(二)—— 数据类、枚举类、循环、常用集合及操作符的写法(下 )
Kotlin 学习笔记(二)—— 数据类、枚举类、循环、常用集合及操作符的写法(下)
46 0
|
2月前
|
XML 并行计算 Java
反射、枚举和lambda表达式
反射、枚举和lambda表达式
|
2月前
|
Java 编译器
枚举类的使用
枚举类的使用
|
2月前
|
设计模式 Java
枚举类
java枚举类
|
11月前
|
Kotlin
Kotlin 中定义类、field关键字,主构造函数和次构造函数详解
Kotlin 中定义类、field关键字,主构造函数和次构造函数详解
114 0
|
2月前
|
IDE Java 开发工具
你知道 Java 中关键字 enum 是一个语法糖吗?反编译枚举类
你知道 Java 中关键字 enum 是一个语法糖吗?反编译枚举类
58 0
|
8月前
|
Java 索引
枚举类 - 自定义枚举类与使用enum关键字
枚举类 - 自定义枚举类与使用enum关键字
70 0
|
9月前
|
Java Kotlin
Kotlin 学习笔记(二)—— 数据类、枚举类、循环、常用集合及操作符的写法(上)
Kotlin 学习笔记(二)—— 数据类、枚举类、循环、常用集合及操作符的写法(上)
37 0
|
11月前
|
设计模式 JSON Java
枚举类——用好枚举真的没有那么简单!
枚举类——用好枚举真的没有那么简单!
73 0