Java Enum创建

1.创建一个最简单的枚举类型

创建枚举类型要使用enum关键字,隐含了所创建的类型都是java.lang.Enum类的子类,它是抽象类。其中,枚举类型符合通用模式 Class Enum<E extends Enum<E>> ,而 E 表示枚举类型的名称。枚举类型的每一个值都将映射到 protected Enum(String name, int ordinal) 构造函数中,在这里,每个值的名称都被转换成一个字符串,并且序数设置表示了此设置被创建的顺序。

 

public enum Size{
        SMALL,
        MEDIUM,
        LARGE;
}
 

实际上调用了三次构造函数:

new Enum<Size>("SMALL",0);
new Enum<Size>("MEDIUM",1);
new Enum<Size>("LARGE",2);

 

2.创建一个复杂点的枚举类

 

public enum Size
{
   SMALL("S","A"), 
   MEDIUM("M","B"), 
   LARGE("L","C"), 
   EXTRA_LARGE("XL","D");
}

 此时是无法通过编译器的。因为Size的每个成员附带额外的参数(类似带参数构造函数)

 

 正确的做法是:增加带参数的构成函数

 

public enum SizeTest
{
   SMALL("S","A"), 
   MEDIUM("M","B"), 
   LARGE("L","C"), 
   EXTRA_LARGE("XL","D");

   private SizeTest(String abbreviation,String symbol) {}
}

 

  参数类型确定,但是参数名可任意

你可能感兴趣的:(java,C++,c,C#)