第十八次Java作业

"本文介绍了如何使用Java枚举类型来替代常量表示支付方式,以解决代码冗余和数据分类问题。枚举类型提供了更好的可读性,能够直接通过"=="比较,且在编译时提供优势,如常量值改变无需重新编译。此外,枚举还可以实现接口,增强了代码的灵活性和安全性。通过枚举,可以减少错误,提高生产效率,并在switch语句中避免边界问题。"
摘要由CSDN通过智能技术生成

使用枚举类型

枚举类型的普通使用

常量项需求

如下代码是攀博课堂支付类中支付方式的的表示方式:

以上使用常量表示支付方式相关数据的方式存在着以下问题:
1、代码不够简洁PbPayFactory类中就常量的配置都占据了近一半的代码量,不方便类阅读。

2、不能很好的对数据进行分类
支付类型和支付接口地址依靠人工通过命名关联在一起容易出错,常量越多越不方便管理。对于大型项目的开发类似的配置有很多,如果有一种简洁、分类配置常量的方式将会大大提高生产效率。

枚举类型介绍
java中对常量数据的配置可以使用枚举类型实现,枚举类型是面向对象中的一种类型,它也有对象、属性、方法等所以它非常方便定义,枚举类型将它的对象(实例)设置为常量方便读取和使用。

定义枚举类型

枚举类型也有成员方法、成员变量,下边将攀博课堂支付类型等常量项用枚举类型定义:

 

枚举类实现接口

枚举类型不能继承其它类型但它可以实现一个或多个接口,这个在生产使用中较多。
1、接口

 

 

 

优点:

1)增强代码可读性,传递参数错误

2)去除equals两者判断 由于常量值地址唯一,使用枚举可以直接通过“==”进行两个值之间的对比,性能会有所提高。

3)编译优势(与常量类相比)

常量类编译时,常量被直接编译进二进制代码中,常量值在升级中变化后,需要重新编译引用常量的类,因为二进制代码中存放的是旧值。枚举类编译时,没有把常量值编译到代码中,即使常量值发生改变,也不会影响引用常量的类。

4)修改优势(与常量类相比)

枚举类编译后默认final class,不允许继承可防止被子类修改。常量类可被继承修改、增加字段等,易导致父类不兼容。

5)枚举型可直接与数据库交互。

6)Switch语句优势

使用int、String类型switch时,当出现参数不确定的情况,偶尔会出现越界的现象,这样我们就需要做容错操作(if条件筛选等),使用枚举,编译期间限定类型,不允许发生越界。
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值