zoukankan      html  css  js  c++  java
  • 十一.状态设计模式

    一.定义

    1. 当一个对象的内在状态发生改变,允许其改变行为,这个对象看起来像改变了其类
    2. 角色:
      (1)State:抽象状态角色 (eg:Lifestate),持有Context属性,状态内的方法带来的状态流转要使用Context改变当前状态
      (2)ConcreteState:具体状态 (eg:Closingstate)
      (3)Context:环境角色 - 负责具体状态的切换,该类1.持有所有状态作为常亮属性,2.持有当前状态作为属性,3.提供接口表示当前状态下的行为

    二. 场景

    模仿电梯在门开和门关下的操作

    // 客户端调用代码:调用Context执行
    public static void main(String[] args){
      Context context = new Context();
      context.setCurrentState(Context.ClosingState);
      context.open();
      context.close();
      context.run();
      context.stop();
    }
    
  • 相关阅读:
    AWVS——windows下扫描(上)
    中介者模式
    设计模式-类型2
    设计模式=类型
    C++ 1
    字符占字节
    编程规范
    位运算相关规律
    十进制转二进制
    递归理解
  • 原文地址:https://www.cnblogs.com/72808ljup/p/5129843.html
Copyright © 2011-2022 走看看