如题所述
常量是一旦定义就不可修改的值,在开发中,如果有多个常量,需要定义多个常量;如:
public static final String MONDAY="周一";
public static final String TUESDAY ="周二";
public static final String WEDNESDAY="周三";
public static final String THURSDAY="周四";
public static final String FRIDAY="周五;
public static final String SATURDAY ="周六";
public static final String SUNDAY ="周日";
这样定义,显然比较费劲,枚举你可以理解为是对常量的封装,它是一个特殊的类。可以有自己自定义的方法,自定义的属性和构造函数。其次,变量的类型可以是枚举类型,这样就限定了变量的取值范围。如:
定义一个枚举
public enum WEEK{
MONDAY("周一"),TUESDAY(),WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY;
//定义私有构造函数,给这些常量赋值
private String str;
public String getStr(){
return this.str;
}
}
定义一个变量为枚举类型
WEEK w = WEEK.MONDAY;
System.out.println(s.getStr());
public static final String MONDAY="周一";
public static final String TUESDAY ="周二";
public static final String WEDNESDAY="周三";
public static final String THURSDAY="周四";
public static final String FRIDAY="周五;
public static final String SATURDAY ="周六";
public static final String SUNDAY ="周日";
这样定义,显然比较费劲,枚举你可以理解为是对常量的封装,它是一个特殊的类。可以有自己自定义的方法,自定义的属性和构造函数。其次,变量的类型可以是枚举类型,这样就限定了变量的取值范围。如:
定义一个枚举
public enum WEEK{
MONDAY("周一"),TUESDAY(),WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY;
//定义私有构造函数,给这些常量赋值
private String str;
public String getStr(){
return this.str;
}
}
定义一个变量为枚举类型
WEEK w = WEEK.MONDAY;
System.out.println(s.getStr());
温馨提示:答案为网友推荐,仅供参考
第1个回答 推荐于2016-02-01
enum就是为了让你方便使用常量而存在的,
例如:
public enum A {A1("12", 12),
A2("34", 34),
A3("56", 56);
private A(String s, int i) {
S = s;
I = i;
}
public final String S;
public final int I;
}
和这种写法:
public class A {private A (String s, int i) {
S = s;
I = i;
}
public final String S;
public final int I;
public static final A A1 = new A("12", 12);
public static final A A2 = new A("34", 34);
public static final A A3 = new A("56", 56);
}
比起来,你觉得那种更方便?
本回答被提问者和网友采纳