首页互联网java常量 java什么时候用常量,什么时候用枚举呢

java常量 java什么时候用常量,什么时候用枚举呢

编程之家2024-06-09251次浏览

一、java枚举的作用

枚举在日常生活中很常见。例如表示星期的SUNDAY,MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,就是一个枚举,有且只有这七个常量。

java常量 java什么时候用常量,什么时候用枚举呢

枚举或者对应的静态变量方式,最最最常用的地方,就是用于分类的选择。而使用哪种,取决于是否要将分类对应的值存入数据库。比如你的分类1,分类2,分类3对应了1,2,3,你要随其他参数保存进数据库的,这时候就没必要用枚举了,枚举也能做,但多此一举。而那些不需要存入数据库,仅在代码逻辑中出现的分类区别的逻辑,就可以大大方方的用枚举。显得还专业。

一句话说,枚举是一组常量值。

那么我来举个例子

如publicenumColorEnum{

red,

green,

java常量 java什么时候用常量,什么时候用枚举呢

yellow,

blue;}

这排版太难了,我就这样吧。

1、那么调用方法publicvoidmethod(ColorEnumenum){}时只能传递red,green,...四个值中的一个,否则编译会出错,这对于用户编程而言是安全的

2、枚举类型相对与常量类型拥有更好的可读性,通过字面意思即可知道

3、枚举类型提供很多方法可以方便的操作,例如迭代查找等,同时枚举还有较高的运行的效率

java常量 java什么时候用常量,什么时候用枚举呢

4、在程序写1,看代码的时候,不知道这个1代码什么意思。一般的静态变量实际上也是一个值,定义个名称,能够从字面上理解代码的意思和作用。

二、java什么时候用常量,什么时候用枚举呢

写代码是一种艺术,结构层次好的代码可以少出bug,提高效率。而在Java编程中,什么时候用常量,什么时候用枚举呢?曾经的我也迷茫过。当然,经历了多年的编程之后,也陆陆续续有了自己的思考。

在我看来,具备一定规则的常量集合需要使用枚举类,既包含一年四季,一周七天这种自然枚举,也包含在编译时就知道所有可能值的其它情况,比如加减乘除等运算。枚举值不必是固定的,可以在后面继续添加。

而对于毫无规则归类可言的一些常量:如SUCCUSS字符串、密钥串、路径等等这些,可以放在一个常量类里面糅在一起。在《EffectiveJava》一书中,作者建议使用一般类加私有构造方法的方式,而在sonar代码质量扫描中,也将该方式定为常量类处理的推荐方式。

而相对于常量类,枚举的优点是很明显的。枚举更具可读性、更安全,并且功能更强大。许多枚举不需要明显的构造器和成员变量,而有些枚举通过为每个枚举值绑定数据,并且为这些数据提供函数,可以添加额外的功能,枚举值也可以直接用来进行数据库存储。

建议在具备相关性的前提下,能使勇枚举的地方一定要要用枚举,如果无法使用枚举时,建议使用带有私有构造函数的常量类。

作者:夕阳雨晴,欢迎关注我的头条号:偶尔美文,主流Java,为你讲述不一样的码农生活。

exe病毒(exe病毒会感染电脑吗)ajax,ajax术语是哪家公司先提出的