枚举就是把集合里的对象元素 一个一个提取出来!比如说 你买了一合巧克力 里面有草莓味的 有香草口味的 有苹果口味的 你想把他们拿出来 就必须用“手”一个一个把他们拿出来 并且一次只能取一个哦 这里的手就是枚举器 你取的动作就是枚举的过程。
我们为什么要用枚举而不用public static final的常量解决类似问题。 因为“接口直观,类型安全”。为什么说接口直观呢? 因为如果你定义了枚举,那么需要枚举值作为参数的方法,就能在方法的参数里,直接写枚举这个类名,这样别人一看就知道,哦,我这应该是传一个枚举值。
相比较而言用public static final的方法就不这么直观了,假设是个final int那方法的参数里就是写int, 是个String那就是String。
如果不了解代码,很有可能让别人误觉得这里传个int,String就可以了,谁会想到要传事先定义好的一些变量呢?
为什么说安全呢?我的理解是,因为你的参数是一个枚举类型,那么你往里面传的时候就只能传枚举类型里面定义的一些值了,传不进其他值,这从某种意义上来说就是安全了。
枚举是一个类,里面的对象能被引用。
|