匿名内部类抽象实现枚举

/*
 星期天: 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 ? "星期六"
								: "星期日";
	}
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值