A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 絮缘小默 中级黑马   /  2014-3-2 16:27  /  812 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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();
        }
解释下,每个元素后大括号的含义

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

3 个回复

倒序浏览
因为枚举类中定义了抽象方法,所有每个实例对象都要复写该抽象方法
回复 使用道具 举报
枚举类中定义了抽象方法,要实例化对象的话,就得让每个对象实现抽象方法。加了大括号定义了一个匿名内部类,这个类实现了抽象方法。
回复 使用道具 举报
枚举类是一个特殊的类,它里面的每个元素都是这个类的一个实例对象,由于这个类中定义了一个抽象的方法,它在定义元素的时候就要去实现这个方法,大括号里面就是这个类对象的具体实现。
原理和内部类有点相似。

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马