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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张超超 黑马帝   /  2012-4-20 18:06  /  1618 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

关于张老师讲解枚举的问题:
  public abstract class WeekDay{
     private WeekDay(){}
     public static final weekDay SUN = new WeekDay(){
            public WeekDay nextDay(){ return MON;}
    }
private WeekDay(){}
     public static final weekDay MON= new WeekDay(){
            public WeekDay nextDay(){ return SUN;}
    }
public abstract WeekDay nextDay();
public String toString(){  return this == SUN ? "SUN" : "MON"}
} 是第十三节“13_黑马程序员_张孝祥_Java基础加强_用普通类模拟枚举的实现原理”
张老师说这里使用了匿名子类就是new WeekDay(){},我没太弄明白,是使用了匿名内部类啊还是使用了匿名内部子类啊?如果说是匿名子类,但和外部类并没有继承关系啊,没太弄清楚。

3 个回复

倒序浏览
内部类SUN实现了WeekDay的抽象方法(nextDay)
回复 使用道具 举报
new WeekDay(){
            public WeekDay nextDay(){ return SUN;}
new这个对象的时候,就覆盖了weekday里的抽象方法nestday
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马