本帖最后由 沿途小将 于 2014-8-16 13:38 编辑
jvm提供的枚举是java.lang.Enum类的子类,封装了一些东西。
这里借用张孝祥老师的例子,进一步解析枚举本质。如下:
- public class TestEnum{
- public final static TestEnum a=new TestEnum();
- public final static TestEnum b=new TestEnum();
- private TestEnum(){
-
- }
- }
复制代码
加入在其他地方使用TestEnum类,如:
- public class Test1{
- public static void main(String[] args){
- TestEnum te=TestEnum.a;//此处只能是TestEnum的属性成员a或者b,这就是枚举的雏形
- }
- }
复制代码
用jvm提供的类enum实现枚举,如
- public enum TestEnum{
- a,b;//最好在类的首部
- private TestEnum(){//构造方法必须为private
- }
- public TestEnum Anext(){
- return b;
- }
- }
复制代码
那么就不难看出一下代码是怎么成立的了
- public class Test1{
- public static void main(String[] args){
- TestEnum te=TestEnum.a.Anext();
- }
- }
复制代码
不知这个帖子,我对枚举的认识认识对不对,还望大家不吝赐教! |
|