打字猴:1.700446029e+09
1700446029
1700446030 /*name、lifeTime、scope的get方法较简单,不再赘述*/
1700446031
1700446032 }
1700446033
1700446034 这是一个角色定义类,描述了两个角色:管理员(Admin)和普通用户(User),同时它还通过构造函数对这两个角色进行了描述:
1700446035
1700446036 name:表示的是该角色的中文名称。
1700446037
1700446038 lifeTime:表示的是该角色的生命期,也就是多长时间该角色失效。
1700446039
1700446040 scope:表示的是该角色的权限范围。
1700446041
1700446042 读者可以看出,这样一个描述可以使开发者对Admin、User两个常量有一个立体多维度的认知,有名称、生命期,还有范围,而且还可以在程序中方便地获得此类的属性。
1700446043
1700446044 推荐大家在枚举定义中为每个枚举项定义描述,特别是在大规模的项目开发中,大量的常量项定义使用枚举项描述比在接口常量或类常量中增加注释的方式友好得多,简洁得多。
1700446045
1700446046
1700446047
1700446048
1700446049 编写高质量代码:改善Java程序的151个建议 [:1700438157]
1700446050 编写高质量代码:改善Java程序的151个建议 建议85:小心switch带来的空值异常
1700446051
1700446052 使用枚举定义常量时,会伴有大量的switch语句判断,目的是为每个枚举项解释其行为,例如这样一个方法:
1700446053
1700446054 public static void doSports(Season season){
1700446055
1700446056 switch(season){
1700446057
1700446058 case Spring:
1700446059
1700446060 System.out.println(“春天放风筝”);
1700446061
1700446062 break;
1700446063
1700446064 case Summer:
1700446065
1700446066 System.out.println(“夏天游泳”);
1700446067
1700446068 break;
1700446069
1700446070 case Autumn:
1700446071
1700446072 System.out.println(“秋天捉知了”);
1700446073
1700446074 break;
1700446075
1700446076 case Winter:
1700446077
1700446078 System.out.println(“冬天滑冰”);
[ 上一页 ]  [ :1.700446029e+09 ]  [ 下一页 ]