package AdvanceJava;
/*
* 1.枚举主是一个类,而里面的枚举量也就是类中的常量
* 2.在枚举里面的可以定义方法和成员变量
* 3.对于其不可以有公有 的构造函数
* 4.枚举默认实现了comparable 接口,可以进行比较
* 4.枚举中的每一个枚举常量都是一个枚举类型常量,也是是自己new 自己
* 5.可以自己设置它们自己的构造参数 ,会根据参数来进行自己调用
* */
enum Week
{
SUN,MON,TUE,WED,THU,FRI,SAT,DESC("这是一个日期枚举");
public String desc = null;
public static void show()
{
System.out.println("I'm a enum");
}
private Week() {}
private Week(String desc)
{
this.desc = desc;
System.out.println("调用 过了");
}
}
public class EnumTest {
public static void main(String args[])
{
/*
* 下面进行枚举的查找
*/
Week day = Week.MON;
switch(day)
{
case SUN:System.out.println("今天是"+day.toString());break;
case MON:System.out.println("今天是"+day.toString());break;
case TUE:System.out.println("今天是"+day.toString());break;
case WED:System.out.println("今天是"+day.toString());break;
case THU:System.out.println("今天是"+day.toString());break;
case FRI:System.out.println("今天是"+day.toString());break;
case SAT:System.out.println("今天是"+day.toString());break;
}
/*
* 下面是枚举 的遍历
*/
for(Week day1:Week.values())
{
System.out.println(day1);
}
System.out.println(Week.DESC.desc);
}
}