专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

设计模式(十五):状态模式

68_1.png

优点:

  ① 将与特定状态相关的行为局部化,并且将不同状态的行为分割开。

缺点:

  ① 可能出现大量状态类。

适用范围:

  当一个对象的行为取决于他的状态,而且他必须在运行时刻根据状态改变他的行为,就要考虑此模式。

  一个操作中含有庞大的分支机构,并且这些分支决定于对象的状态。

客户端: 

  Work work = new Work();//初始化给work状态赋值
  work.setHour(9); //给work时间赋值
  work.writeProgram(); //判断现状

  work.setHour(19); //给work时间赋值

  work.setFinsh(true); //打断的事件,工作完成即可下班,不必再继续加班

  work.writeProgram(); //判断现状

一句话概括:

  根据不同的工作时间,自动切换显示不同的状态,如上午精神,下午疲惫等

    /**
     * State (状态是抽象类)
     * ForenoonState  NoonState  AfternoonState  EveningState  RestState  SleepState -- 基本按时间段顺序固定排序
     * (各自实例化State,根据时间范围及相关条件来判断是否处于当前状态,若不是,则转入下一个时间段的状态。)
     *
     * Work (设置开始状态、设置时间、进入序列判断显示现状等方法)
     *
     */

文章永久链接:https://tech.souyunku.com/20287

未经允许不得转载:搜云库技术团队 » 设计模式(十五):状态模式

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们