你问这种问题的话最好去百度百科一下。那里面说的要比这里大多数人讲的都要清楚。 我就传一个简单例子吧public class TestEnum { /*最普通的枚举*/ public enum ColorSelect { red, green, yellow, blue; } /* 枚举也可以象一般的类一样添加方法和属性,你可以为它添加静态和非静态的属性或方法,这一切都象你在一般的类中做的那样. */ public enum Season { // 枚举列表必须写在最前面,否则编译出错 winter, spring, summer, fall; private final static String location = "Phoenix"; public static Season getBest() { if (location.equals("Phoenix")) return winter; else return summer; } }
枚举相当相当的好用,不要忽视它!枚举的本质是一个类拥有自己的几个类对象做为成员变量: public enum Color{ WHITE,BLACK,BLUE; } 简单的可以认为相当于 public class Color{ private Color(){} public static final Color WHITE = new Color(); public static final Color BLACK = new Color(); public static final Color BLUE = new Color(); } 单实例的枚举是实现单例模式的最好方法。枚举和int常量相比,更强大,更易读,更安全。 许多枚举受益于"每个常量与属性相关"以及"提供行为受这个属性影响的"(这也是我在项目中使用枚举的原因)
我就传一个简单例子吧public class TestEnum {
/*最普通的枚举*/
public enum ColorSelect {
red, green, yellow, blue;
} /* 枚举也可以象一般的类一样添加方法和属性,你可以为它添加静态和非静态的属性或方法,这一切都象你在一般的类中做的那样. */
public enum Season {
// 枚举列表必须写在最前面,否则编译出错
winter, spring, summer, fall; private final static String location = "Phoenix"; public static Season getBest() {
if (location.equals("Phoenix"))
return winter;
else
return summer;
}
}
public enum Color{
WHITE,BLACK,BLUE;
}
简单的可以认为相当于
public class Color{
private Color(){}
public static final Color WHITE = new Color();
public static final Color BLACK = new Color();
public static final Color BLUE = new Color();
}
单实例的枚举是实现单例模式的最好方法。枚举和int常量相比,更强大,更易读,更安全。
许多枚举受益于"每个常量与属性相关"以及"提供行为受这个属性影响的"(这也是我在项目中使用枚举的原因)