zoukankan      html  css  js  c++  java
  • 设计模式之观察者模式

    观察者模式

    定义:定义对象间一种一对多的依赖关系,使得当每一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新。

    类图:

    多个[观察者]观察[被观察者]的状态,当[被观察者]的状态发生改变时,[观察者】自己的状态也随着发生变化。

    被观察者有三个方法:attach方法是向这个容器中添加观察者对象;detach方法是从容器中移除观察者对象;notify方法是依次调用观察者对象的对应方法。

    观察者模式是一种常用的触发机制,它形成一条触发链,依次对各个观察者的方法进行处理。

    这里有一个好处是,被观察者不需要知道观察者的内容和有多少个观察者,只是在自己状态发生变化的时候通知订阅自己的观察者

    补充:vector和list的区别

    vector相当于数据结构中的顺序表,在物理地址上是连续的,查询速度快,可以直接下标索引,但是在删除插入数据的时候,后面的所有数据都要移动,效率较低

    list是双向链表,物理地址不连续,必须从头或尾查询,速度慢,但是可以动态的插入删除数据

  • 相关阅读:
    fdisk 分区
    fdisk 添加逻辑分区
    centos7 bond0 双网卡配置
    查看centos7启动项
    本地yum源安装docker
    cobbler Ubuntu16.04 安装
    docker-ce-17.03.2 离线安装RPM包
    day14 生成器的进阶
    day13迭代器与生成器
    day12闭包,装饰器
  • 原文地址:https://www.cnblogs.com/sker/p/5481598.html
Copyright © 2011-2022 走看看