zoukankan      html  css  js  c++  java
  • [Design] State Pattern

      行为模式主要是责任和算法的抽象化。行为模式不仅仅是关于类和对象的,而且是关于它们之间的相互作用的。
      行为模式分为类的行为模式和对象的行为模式两种。
    类的行为模式
        类的行为模式使用继承关系在几个类之间分配行为。
    对象的行为模式
        对象的行为模式则使用对象的聚合来分配行为。
    --------------------------------------------------------
    状态模式

    状态模式以称状态对象模式,是对象的行为模式。

    状态模式允许一个对象在其内部状态改变的时候改变其行为。这个对象看上去就像改变了它的类一样。状态模式把所研究的对象的行为包装在不同的状态对象里,每一个状态对象都属于一个抽象状态类的一个子类。

     

    结构及角色

    • 1、抽象状态(State)角色

    定义一个接口,用以封装环境对象的一个待定状态所对应的行为。

    • 2、具体状态(Concrete State)角色

    每一个具体状态都实现了环境的一个状态所对应的行为。

    • 3、环境(Context)角色

    定义客户端所感兴趣的接口,并且保留一个具体状态类的实例。这个具体状态类的实例给出环境对象的现有状态。

  • 相关阅读:
    JS获取单选框checked的value方法
    URL链接后面的参数解析,与decode编码解码;页面刷新回到顶部jquery
    JS原生增删,判断class是否存在方法
    转载:jquery.ajax之beforeSend方法使用介绍
    css3 filter(滤镜)属性汇总与使用介绍,来源W3C
    使用 HTML5 Geolocation 构建基于地理位置的 Web 应用学习网站分享
    js获取移动端触摸坐标
    jquery如何获取手机网页触屏坐标:ontouchstart 、ontouchend、ontouchmove
    js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码
    JS获取浏览器可视区域的尺寸
  • 原文地址:https://www.cnblogs.com/abeen/p/1441901.html
Copyright © 2011-2022 走看看