一般来说,我们经常使用的枚举项只有一个属性,即排序号,其默认值是从0、1、2...
...。但是除了排序号外,枚举还有一个(或多个)属性。
比如,可以通过枚举构造函数声明业务值,定义可选项,添加属性,看如下代码:
enum Role{
Admin("管理员",new Lifetime(),new Scope());
User("普通用户",new Lifetime(),new Scope());
//中文描述
private String name;
//角色生命周期
private Lifetime lifeTime;
//权限范围
private Scope scope;
Role(String _name,Lifetime _lt,Scope _scope){
name = _name;
lifeTime = _lifeTime;
scope = _scope;
}
/**name,lifeTime,scope的get方法较简单,不再赘述*/
}
可以看书,这样一个描述可以使开发者对Admin、User两个常量有一个立体多维的认知,有名称、生命周期、还有范围,而且还可以在程序中方便地获取此类的属性。
推荐大家在枚举定义中为每个枚举定义描述,特别是在大规模项目开发中,大量的常量项定义使用枚举项描述比在接口常量或类常量中增加注释的方式更友好得多,简洁的多。
分享到:
相关推荐
C# 使用构造函数 C# 使用构造函数 C# 使用构造函数
本文档为自己手动书写样例,涉及到java项目中经常用到的枚举类型,使用枚举类型有利于快速引起区分对应字典键值对
java中的构造代码块和构造函数.pdf
8.java构造函数.zip8.java构造函数.zip8.java构造函数.zip8.java构造函数.zip8.java构造函数.zip8.java构造函数.zip8.java构造函数.zip8.java构造函数.zip8.java构造函数.zip8.java构造函数.zip8.java构造函数.zip8....
3 构造函数,(创建对象时执行完2后再执行构造函数,不管构造函数是public还是private) */ public class Test{ public Test(){ System.out.println("类Test构造方法被执行 6"); } { System.out.println("类...
C 程序设计课件:3 构造函数、析构函数.ppt
C++程序设计课件:3 构造函数、析构函数.ppt
Java 实例 - Enum(枚举)构造函数及方法的使用源代码-详细教程.zip
java代码-使用java解决在Person类的基础上,添加一个带参数的构造函数,参数分别为姓名,性别,年龄的源代码 ——学习参考资料:仅用于个人学习使用!
创建一个子类的对象实例的时候,必先调用父类的无参数的构造函数(默认构造函数),假如父类有带参数的构造函数,那么系统将不会给它创建无参数的构造函数,这时,子类在实例化的时候,因为找不到父类的默认构造函数...
主要介绍了java枚举类的构造函数实例详解的相关资料,需要的朋友可以参考下
1. 设计一个类SavingsAccount,定义一个静态数据成员记录存款的年利率(rate) 2. 参考附件资料《拷贝构造函数的调用》,创建一个包含double*的类 3. 建立类RationalNumber(分数类),使其具有如下的功能:
详细介绍了构造函数、复制构造函数、拷贝构造函数之间的区别
每个类都具有构造函数和析构函数。其中,构造函数在定义对象时被调用,析构函数在对象释放时被调用。如果用户没有提供构造函数和析构函数,系统将提供默认的构造函数和析构函数。 1.构造函数 构造函数是一个与类同名...
本文主要总结了Java多线程开发中线程创建时多用到的创建方式(不同的构造函数)以及线程组相关的基础知识
在Java中,构造函数的访问级别通常是public, 它提供了一个构造该类对象的接口。可是你知不知道,把构造函数的级别设为private, 有一些特别用处。
本程序包含构造函数和析构函数,可以把构造函数和析构函数的作用区分开
构造函数本身就是要初始化实例,那使用虚函数也没有实际意义呀。所以构造函数没有必要是虚函数。虚函数的作用在于通过父类的指针或者引用来调用它的时候能够变成调用子类的那个成员函数。而构造函数是在创建对象时...