枚举的使用

Posted 116970u

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了枚举的使用相关的知识,希望对你有一定的参考价值。

 1  2 
 3 /**
 4  * 一、枚举类的使用
 5  * 1.枚举类的理解:类的对象只有有限个,确定的。我们称此类为枚举类
 6  * 2.当需要定义一组常量时,强烈建议使用枚举类
 7  * 3.如果枚举类中只有一个对象,则可以作为单例模式的实现方式。
 8  *
 9  * 二、如何定义枚举类
10  * 方式一:jdk5.0之前,自定义枚举类
11  * 方式二:jdk5.0,可以使用enum关键字定义枚举类
12  *
13  * 三、Enum类中的常用方法:
14  *    values()方法:返回枚举类型的对象数组。该方法可以很方便地遍历所有的枚举值。
15  *    valueOf(String str):可以把一个字符串转为对应的枚举类对象。要求字符串必须是枚举类对象的“名字”。如不是,会有运行时异常:IllegalArgumentException。
16  *    toString():返回当前枚举类对象常量的名称
17  *
18  * 四、使用enum关键字定义的枚举类实现接口的情况
19  *   情况一:实现接口,在enum类中实现抽象方法
20  *   情况二:让枚举类的对象分别实现接口中的抽象方法
21  *
22  * @author shkstart
23  * @create 2019 上午 10:17
24  */
25 public class SeasonTest {
26 
27     public static void main(String[] args) {
28         Season spring = Season.SPRING;
29         System.out.println(spring);
30 
31     }
32 
33 }
34 //自定义枚举类
35 class Season{
36     //1.声明Season对象的属性:private final修饰
37     private final String seasonName;
38     private final String seasonDesc;
39 
40     //2.私有化类的构造器,并给对象属性赋值
41     private Season(String seasonName,String seasonDesc){
42         this.seasonName = seasonName;
43         this.seasonDesc = seasonDesc;
44     }
45 
46     //3.提供当前枚举类的多个对象:public static final的
47     public static final Season SPRING = new Season("春天","春暖花开");
48     public static final Season SUMMER = new Season("夏天","夏日炎炎");
49     public static final Season AUTUMN = new Season("秋天","秋高气爽");
50     public static final Season WINTER = new Season("冬天","冰天雪地");
51 
52     //4.其他诉求1:获取枚举类对象的属性
53     public String getSeasonName() {
54         return seasonName;
55     }
56 
57     public String getSeasonDesc() {
58         return seasonDesc;
59     }
60     //4.其他诉求1:提供toString()
61     @Override
62     public String toString() {
63         return "Season{" +
64                 "seasonName=‘" + seasonName + ‘‘‘ +
65                 ", seasonDesc=‘" + seasonDesc + ‘‘‘ +
66                 ‘}‘;
67     }
68 }

 

以上是关于枚举的使用的主要内容,如果未能解决你的问题,请参考以下文章

如何在C ++中将枚举导入不同的命名空间?

PAT1049-----枚举法,找规律题,注意降低时间复杂度

C/C++ 中enum枚举量的介绍:介绍enum枚举量在C/C中的作用和使用方法

Java 枚举类的基本使用

在案例查询中显式转换枚举

同名的类函数宏和枚举器