【java核心卷笔记】枚举类

【java核心卷笔记】枚举类,第1张

为什么要引入枚举类:

例:

 

就是因为在没有枚举类的时候,我们要定义一个有限的序列,比如星期几,男人女人,春夏秋冬,一般会静态常量的形式,但是使用那样的形式如果需要一些其他的功能,需要些很多奇奇怪怪的代码。所以,枚举类的出现,就是为了简化这种 *** 作

使用一个简单的枚举类表示 星期: 

在枚举类中添加值和方法

 

当一个类的对象是有限且固定时,用枚举类比较方便。

为什么不使用静态常量替代枚举类?

1、类型不安全。如果一个方法要求传入参数,如果是枚举类型,只能传入枚举类型中包含的对象

2、没有命名空间。

简单的枚举类:

高级的枚举类(带参构造器):

枚举类的所有实例都必须放在第一行展示,不需要使用new关键字,不需显示调用构造器,自动添加public static final修饰。

使用enum定义非抽象的枚举类默认使用final修饰,不可以被继承。

枚举类的构造器只能是私有的。

枚举类内也可以定义属性和方法,可以是静态的非静态的。

枚举类实现接口:

枚举类可以实现一个或多个接口。需要实现接口中的所有方法,若没有完全实现,则枚举类应设为abstract类。
 

 

 采取实现了实现抽象方法和匿名内部类的实现,花括号部分是一个类体。

枚举类实现抽象方法:

 

java核心卷示例代码:

 

枚举类和switch:

case表达式直接写入枚举值,不需加入枚举类作为限定。

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/799669.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-06
下一篇 2022-05-06

发表评论

登录后才能评论

评论列表(0条)

保存