黑马程序--java枚举实例

-------------------------------------------android培训期待与您交流 -------------------------------------

1、基本枚举

public enum weekDay{
SUN,MON,TUE,WED,THI,FRI,STA
}

public static void main(String[] args) {
weekDay week=weekDay.FRI;
System.err.println(week.name());
System.err.println(week.ordinal());//获取枚举的第几个
System.err.println(week.valueOf("SUN").toString());//根据传递的参数返回enum类型
System.err.println(week.values());//把枚举封装成数组,便于遍历
}

 

2、带构造方法的枚举

public enum weekDay{
SUN("111")//会调用带有参数的构造方法
,MON,TUE,WED,THI,FRI,STA;
private weekDay(){
System.err.println("a");
//构造方法必须位于元素的后面,并且必须是私有的,只要使用了元素都为调用构造方法
};
private weekDay(String str){
//构造方法必须位于元素的后面,并且必须是私有的
System.err.println("b");
};
}

public static void main(String[] args) {
weekDay week=weekDay.FRI;
System.err.println(week);

}

 


4、 带抽象方法的枚举

public enum jiaotongdeng{
RED(30){
public jiaotongdeng nextLamp(){
return GREEN;
};
},
GREEN(40){
public jiaotongdeng nextLamp(){
return YELLOW;
};
},
YELLOW(5){
public jiaotongdeng nextLamp(){
return RED;
};
};
public abstract jiaotongdeng nextLamp();//抽象方法的枚举
private int time;
private jiaotongdeng(int time){
this.time=time;
}
public String test(){
return "bbbb";
}
}

public static void main(String[] args) {
System.err.println(jiaotongdeng.RED.test());//方法调用
}

 

 

你可能感兴趣的:(java)