枚举

   枚举:每一个枚举就是一个对象。

    枚举就是要让某个类型的变量的取值只能为若干个固定值中的一个,否则,编译器就会报错。枚举可以让编译器在编译时就可以控制源程序中填写的非法值,普通变量的方式在开发阶段无法实现这一目标。

public class WeekDay{
    private WeekDay(){}
    
public final static WeekDay SUN = new WeekDay();//final和static排前排后没有区别
public final static WeekDay MON = new WeekDay();
} 
主函数:
WeekDay weekDay = new WeekDay.MON://这样就可以规定死应该有多少个数量

  A:枚举类的基本应用

 

Public enum WeekDay{

    SUN,MON,TUE,WED,THI,FRI,SAT//分号可打可不打,如果元素列表后面有东西则必须打上分号

     1,枚举就相当于一个类,类中的元素就相当于该类new出来的实际对象     

     2,枚举自动实现了toString()name()自己的对象名、ordinal()自己的排行、getClass(),因为枚举的元素是个对象,这个方法可以得到该对象所属的类。

 

      B:带有构造方法的枚举类

Public enum WeekDay{
SUN,MON,TUE,WED,THI,FRI,SAT;//等效于静态的成员变量
//上面的元素列表,必须显示在所有其他的定义信息的前面,如果元素列表后面还有东西,该元素列表必须标上分号且用private修饰
private WeekDay(){}//默认调用的构造方法,这样SUN()也行
private WeekDay(int day){}//SUN(1),这样就调用了此构造方法
}

你可能感兴趣的:(枚举)