你还在用if else吗?——状态模式、职责链模式

小时候写日记都是这么写的:上午七点起床,八点之前洗脸刷牙吃早饭,十二点之前好好上课,中午一点,吃午饭,下午两点到六点,上课,下课,找请假,明天妈妈要带我去姥姥家,九点之前,看动画片,九点钟,收拾去姥姥家的东西,十点以后,睡觉。

我们把请假这块在充实一下:找班长请假,班长只能请半天,否则班长向老师申请,如果请假时间超过一周,老师要跟副年级主任请示,如果请假超出一个月,主任要跟年级正主任请示,然后被批准,或不被批准。

如果用编程语言描述这两件事情,应该是这个样子的。

public class DayWork
{
	private int hour;
	

	public void writeProgram()
	{
		if (hour < 7)
		{
			System.out.println("当前时间:" + hour + "点 睡觉");
		}
		else if (hour = 7)
		{
			System.out.println("当前时间:" + hour + "洗脸刷牙吃早饭");
		}
		else if (hour < 12)
		{
			System.out.println("当前时间:" + hour + "点 好好上课");
		}
		else if(hour=1)
		{
			System.out.println("当前时间:" + hour + "点 吃午饭");
			
		}
		else if(hour<18)
		{
			System.out.println("当前时间:" + hour + "点 好好学习");
			
		}
	}

	public int getHour()
	{
		return hour;
	}

	public void setHour(int hour)
	{
		this.hour = hour;
	}


}
//客户端代码
public class Main
{
	public static void main(String[] args)
	{
		DayWork work = new Work();
		work.setHour(9);
		work.writeProgram();
		work.setHour(10);
		work.writeProgram();
		work.setHour(12);
		work.writeProgram();
		work.setHour(13);
		work.writeProgram();
		work.setHour(14);
		work.writeProgram();

	}
}

而请假的代码和这个差不多,if 请半天,班长请࿰

  • 42
    点赞
  • 84
    收藏
    觉得还不错? 一键收藏
  • 77
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值