黑马程序员技术交流社区

标题: 枚举类问题 [打印本页]

作者: 絮缘小默    时间: 2014-3-2 16:27
标题: 枚举类问题
public enum TrafficLamp{
                RED {
                        public TrafficLamp nextLamp() {
                                return null;
                        }
                },
                GREEN {
                        public TrafficLamp nextLamp() {
                                return null;
                        }
                },
                YELLO {
                        public TrafficLamp nextLamp() {
                                return null;
                        }
                };
               
                public abstract TrafficLamp nextLamp();
        }
解释下,每个元素后大括号的含义
作者: ixiangfeng    时间: 2014-3-2 16:31
因为枚举类中定义了抽象方法,所有每个实例对象都要复写该抽象方法
作者: twtzhongxin    时间: 2014-3-2 17:15
枚举类中定义了抽象方法,要实例化对象的话,就得让每个对象实现抽象方法。加了大括号定义了一个匿名内部类,这个类实现了抽象方法。
作者: 戚兴海    时间: 2014-3-2 17:16
枚举类是一个特殊的类,它里面的每个元素都是这个类的一个实例对象,由于这个类中定义了一个抽象的方法,它在定义元素的时候就要去实现这个方法,大括号里面就是这个类对象的具体实现。
原理和内部类有点相似。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2