1. enum 关键字能创建一种新的类型,这种新的类型严格包含了一组被命名的值。
2. 当你创建一个enum类型时 编译器会自动增加一些有用的功能: toStrng()能显示enum实例的名称;ordinal()方法指明enum常量的声明顺序;静态方法values() 能把enum常量转换为相应的数组。
3. enums 可以用在switch语句中;因为switch语句的本意是从一个限定的可能集合中选择数值,这跟enum的设计理念是一致的。
4. 当创建一个enum类型时,编译器会为之创建一个相关联的类,这个类自动继承与java.lang.Enum。
5. enum 实例是可比较的通过==运算符号,equals()方法和hashcode()方法是自动创建的。Enum类是可以comparable同时也可以serializable。
6. enum实例的name()方法可以获得其声明是的名称,这个和tostring()方法返回值是一致的。同时 valueof()方法是Enum类的静态成员方法,通过这个方法可以获得enum实例,实例的名称和方法接受的字符串的相对应。
7. 因为所有的enums继承自java.lang.Enum,java不支持多继承,所以不能在创建enum的时候使用再使用继承,但是实现其他接口