假设我们通过如下方式定义一些常量
class sex{
public static final int sexw=0;//女人
public static final int sexm=1;//男人
}
我们使用时
if (i==sex.sexm){
System.out.println("man");
};
但是这有一个问题,就是在编程的时候无法检查定义的合理性。比如当 i=3的时候正常编译不应该让通过的。
这时我们就需要检举类型
enum sextype{
w,m;
}
这样调用如果错误根本不让编译
sextype st= sextype.m;
if (st==sextype.m){
System.out.println("man");
};
联想,你可以把月份、星期、学科等做成枚举类型;这样不仅代码简洁,而且不易出错。
再深入一步,根据枚举特性,我们可以实现单例设计模式。
在枚举中增加一个方法
enum catcolor{
r,g,b;
public static void act(){
System.out.println("test");
}
}
Java 中直接调用
catcolor.act();
这样是不很香?