匿名内部类抽象实现枚举

来源:互联网 发布:php磁力解析源码 编辑:程序博客网 时间:2024/04/27 03:24
/* 星期天: Sun.=Sunday 星期一: Mon.=Monday 星期二: Tues.=Tuesday 星期三: Wed.=Wednesday  星期四: Thur.=Thursday 星期五: Fri.=Friday 星期六: Sat.=Saturday  */public abstract class WeekDayAbstract {// 构造函数私有化 不可以在new实例对象private WeekDayAbstract() {}// 采用匿名内部类的实现方式public static final WeekDayAbstract SUNDAY = new WeekDayAbstract() {public WeekDayAbstract NextDay() {return MONDAY;}};public static final WeekDayAbstract MONDAY = new WeekDayAbstract() {public WeekDayAbstract NextDay() {return TUESDAY;}};public static final WeekDayAbstract TUESDAY = new WeekDayAbstract() {public WeekDayAbstract NextDay() {return WEDDAY;}};public static final WeekDayAbstract WEDDAY = new WeekDayAbstract() {public WeekDayAbstract NextDay() {return THURDAY;}};public static final WeekDayAbstract THURDAY = new WeekDayAbstract() {public WeekDayAbstract NextDay() {return FRIDAY;}};public static final WeekDayAbstract FRIDAY = new WeekDayAbstract() {public WeekDayAbstract NextDay() {return SATDAY;}};public static final WeekDayAbstract SATDAY = new WeekDayAbstract() {public WeekDayAbstract NextDay() {return SUNDAY;}};// 定义NextDay()方法public abstract WeekDayAbstract NextDay();public String toString() { // 重写ToString方法return this == MONDAY ? "星期一" : this == TUESDAY ? "星期二": this == WEDDAY ? "星期三" : this == THURDAY ? "星期四": this == FRIDAY ? "星期五" : this == SATDAY ? "星期六": "星期日";}}

原创粉丝点击