黑马程序员技术交流社区

标题: 枚举可以继承吗 [打印本页]

作者: 张磊    时间: 2011-8-27 18:44
标题: 枚举可以继承吗
如果可以,怎么实现?有什么实际应用
作者: 匿名    时间: 2011-8-27 19:19
enum animals {DOG,CAT,DUCK};
里面的元素已经是继承了enum类了,因为你可以使用DOG调用enum的自身的方法,那是继承的特征
所以说DOG,CAT,DUCK都枚举的子类。。。。
作者: 匿名    时间: 2011-8-27 21:42
标题: 回复 楼主 的帖子
像楼上说的,是那样,但是显示的继承其他类,是不行的,但是实现接口却可以。
public interface Controller {
                 boolean isControl();
        }

        public enum TrafficLamp implements Controller{
                RED(30) {
                        public TrafficLamp nextLamp() {
                                return GREEN;
                        }
                },
                GREEN(45) {
                        public TrafficLamp nextLamp() {
                                return YELLOW;
                        }
                },
                YELLOW(5) {
                        public TrafficLamp nextLamp() {
                                return RED;
                        }
                };
                public abstract TrafficLamp nextLamp();

                private int time;

                private TrafficLamp(int time) {
                        this.time = time;
                }

                public int getTime() {
                        return this.time;
                }

                public boolean isControl() {
                        return false;
                }
        }
}




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