1、
枚举的使用前提
枚举的定义
menu Name {A,B,C,D,E};
这样就定义了一个枚举Name,当我们在使用的时候只要调用Name.A,就可以了。
2、下面来实现一个枚举输出今天是星期几。
class="java" name="code">
public enum Week {
Mon,Tue,Wed,Thu,Fri,Sat,Sun
}
;Mon,相当于调用了默认
构造函数,构造了Mon这样一个对象。这样就定义了一个简单的枚举,需要输出的时候只要调用Week.Mon;即可
3、当我们需要输出对应的Mon是一的时候可以用这样的方法。
public enum Week {
Mon("一"), Tue("二"), Wed("三"), Thu("四"), Fri("五"), Sat("六"), Sun("日");
private String value;
private Week(String value) {
this.value = value;
}
public String getValue(){
return this.value;
}
}
Mon("一");这种写法,是因为默认的的构造函数被改成了有参的构造函数;
4、当我们需要使用一个带抽象方法的enum
public enum Week {
Mon("一"){
public String localValue() {
return "星期一";
}
}
, Tue("二"){
public String localValue(){
return "星期二";
}
}
, Wed("三"){
public String localValue(){
return "星期三";
}
}
,Thu("四"){
public String localValue(){
return "星期四";
}
}
, Fri("五"){
public String localValue(){
return "星期五";
}
}
, Sat("六"){
public String localValue(){
return "星期六";
}
}
, Sun("日"){
public String localValue(){
return "星期日";
}
};
private String value;
private Week(String value) {
this.value = value;
}
public String getValue(){
return this.value;
}
public abstract String localValue();
}
这种写法,是在同样是构造这个Mon的同时去实现那个抽象方法。
Mon("一"){
public String localValue() {
return "星期一";
}
}
枚举常用的就是这几种方法。