美文网首页
设计模式

设计模式

作者: 一凡和梓墨 | 来源:发表于2016-09-05 17:44 被阅读10次

此人设计模式写的浅显易懂,值得信赖;通俗的说只要你不是智障都能看明白!
http://www.cnblogs.com/lwbqqyumidi/category/543053.html

1.设计模式总结篇系列:观察者模式(Observer)
观察者模式中通常有两个基本的概念主题:观察者和被观察者。当被观察者状态发生改变时,需要通知相应的观察者,当然,每个被观察者所对应的观察者可能不知一个,他们之间是1:n的关系。用专业一点的术语对观察者模式的描述为:当一个对象变化时,其它依赖该对象的对象都会收到通知,并且随着变化。

观察者模式的一般实现方式如下:
1.定义观察者所具有的共同的接口:

interface Observer {
    public void update();
}

2.定义两个观察者:

class ObserverA implements Observer {
    @Override
    public void update() {
        System.out.println("ObserverA has received!");
    }
}

class ObserverB implements Observer {
    @Override
    public void update() {
        System.out.println("ObserverB has received!");
    }
}

3.定义被观察者所具有的抽象父类:

abstract class Observable {

ArrayList<Observer> observers = new ArrayList<Observer>();

public void add(Observer observer) {
    observers.add(observer);
}

public void del(Observer observer) {
    observers.remove(observer);
}

public void notifyObservers() {
    for(Observer observer:observers)
    {    
         observer.update();
     }
}

public void operation() {

}
}

4.定义具体的被观察者:

class ConcretObservable extends Observable{
    @Override  
    public void operation() {  
        System.out.println("update self!");  
        notifyObservers();  
    }
}

5.测试:

public class ObserverTest {  
    public static void main(String[] args) {  
        Observable sub = new ConcretObservable();  
        sub.add(new ObserverA());  
        sub.add(new ObserverB());  
        sub.operation();  
    }  
}

相关文章

  • 设计模式

    常用的设计模式有,单例设计模式、观察者设计模式、工厂设计模式、装饰设计模式、代理设计模式,模板设计模式等等。 单例...

  • 设计模式笔记汇总

    目录 设计原则 “依赖倒置”原则 未完待续... 设计模式 设计模式——策略模式 设计模式——装饰者模式 设计模式...

  • 设计模式

    《C#设计模式》 《C#设计模式》-设计模式概述 《C#设计模式》-面向对象设计原则 《C#设计模式》-单例模式 ...

  • 浅谈JS的一些设计模式

    @(书籍阅读)[JavaScript, 设计模式] 常见设计模式 设计模式简介 设计模式概念解读 设计模式的发展与...

  • 前端设计模式

    JS设计模式一:工厂模式jS设计模式二:单例模式JS设计模式三:模块模式JS设计模式四:代理模式JS设计模式五:职...

  • 设计模式之工厂模式

    设计模式之工厂模式 标签(空格分隔): 设计模式 工厂模式 设计模式的感念 设计模式的应用 工厂设计模式的产生 工...

  • JavaJavascript基础进阶(十七)JS中常用的设计模式

    单利设计模式、构造原型设计模式、发布订阅设计模式、promise设计模式 单利模式 构造原型设计模式 最贴近OOP...

  • 设计模式 - 目录

    设计模式01 - 单例模式 设计模式02 - 工厂模式 设计模式03 - 建造者模式 设计模式04 - 适配器模式...

  • 第1章 设计模式概述

    一、设计模式的概念 二、设计模式的历史 三、设计模式的要素 四、设计模式的分类 ■ 创建型设计模式 ■ 结构型设计...

  • iOS设计模式(3)适配器模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(4)抽象工...

网友评论

      本文标题:设计模式

      本文链接:https://www.haomeiwen.com/subject/dqwrettx.html