观察者模式

woainixxx woainixxx     2022-12-10     540

关键词:

用对象的方式解释观察者模式。

定义一个事件: 2、西游记里面悟空请求菩萨降服红孩儿,菩萨洒了一地水招来一个老乌龟,这个乌龟就是观察者,他观察菩萨洒水这个动作。

解释:对象1观音菩萨,动作洒水,对象2观察者乌龟。代码中,会在观音菩萨中加一个字段,List<Observer> observers = new ArrayList<Observer>();   这个字段用来比作老乌龟的目光吧,观音的动作中

public void setI(int i)     this.i = i;  notifyAllObservers();    这个表示的意思是在动作setI执行中加入一个传播方法,比如说观音洒水,这个动作通过光传播给乌龟,乌龟就过去了,那么这里设置i比作观音洒水,提醒观察者就比作光传播,

private void notifyAllObservers()
for (Observer o: observers)
o.update();

观察者里面的方法就可以执行了,乌龟就来了=update实际执行的意思就是

@Override
protected void update()
System.out.println("HexaObserver:"+Integer.toHexString(this.subject.getI()));

new HexaObserver(subject);  这句话则是hexa乌龟要观察subject观音 的动作,在代码中啊。整个逻辑用汉文整理一下。

实例化观音,实例化乌龟的时候添加乌龟要观察的对象,也就是观音,观音的setI动作=观音洒水,洒水的动作中,植入notifyall,将观音的实例属性观察者observers全部遍历,执行乌龟飞向菩萨的动作=observer.update(),这就完成了观音洒水,乌龟飞过去这个观察者模式的代码逻辑解读。

稍后附上代码。

 

戏说模式之:观察者模式(三体)

定义观察者模式(有时又被称为发布(publish)-订阅(Subscribe)模式、模型-视图(View)模式、源-收听者(Listener)模式或从属者模式)是软件设计模式的一种。在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在... 查看详情

[设计模式]观察者模式与订阅模式

  在读《设计模式》时,观察者模式一直理解为订阅者/发布者,其实这两种模式还是有差异的。  一、观察者模式    相关概念:目标和观察者是基类,目标提供维护观察者的一系列方法,观察者提供更新接口。具体... 查看详情

设计模式-观察者模式

观察者模式,一直在用,却不知道什么是观察者模式。看到一篇文章,关于观察者模式的,说白了就是一个对象(被观察者)持有一堆对象(观察者)的引用,这些引用都放在一个列表中,当被观察者的状态改变时,就调用引用... 查看详情

java设计模式之观察者模式

    观察者模式是对象的行为模式,又叫做发布-订阅-模式、模型-视图-模式、源-监听器-模式或者从属者模式。观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象... 查看详情

设计模式-观察者模式(代码片段)

简介:当一件事变化时,通知给所有需要知道的人观察者模式主要包括观察者(需要知道的人)和被观察者(被观察的那件事)行为型模式观察者模式属于推的模式,观察者是被动接受的类图:示例:被观察者:importjava.util.Array... 查看详情

java设计模式2-观察者模式

什么是观察者模式?何谓观察者模式?观察者模式定义了对象之间的一对多依赖关系,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并且自动更新。在这里,发生改变的对象称之为观察目标,而被通知的对象... 查看详情

设计模式--观察者模式

设计模式--观察者模式1概述1.1定义观察者模式(ObserverDesign),也叫发布订阅模式:定义对象间一对多的依赖关系,使得每当一个对象状态改变时,它的所有依赖者都会收到通知并自动更新。1.2应用消息队列的处理机制,如EJB的消息... 查看详情

观察者模式

Observer观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个被观察对象。这个被观察对象在状态上发生变化时,会通知所有观察者对象,让它们能够自动更新自己。观察者模式是对象的行为模式,又叫发... 查看详情

3观察者模式

  观察者模式(有时又被称为发布(publish )-订阅(Subscribe)模式、模型-视图(View)模式、源-收听者(Listener)模式或从属者模式)是软件设计模式的一种。在此种模式中,一个目标物件管理所有相依于它的观察者物件,并... 查看详情

设计模式--观察者模式

观察者模式1、观察者模式的定义:也叫发布订阅者模式,定义了一种一对多的依赖关系,使得每当一个对象改变状态,则所有以来于它的对象都会得到通知并被自动更新。2、观察者模式所表现出来的需求图 3、根据需求图所... 查看详情

设计模式之观察者模式

设计模式之观察者模式一、什么事观察者模式  如:有A,B连个独立的对象,其中B想时时知道A中的变化,以便做出相应的相应或对策。这就是观察者模式  A为被观察者,B为观察者。A、B同时均可以为被观察者。  观察者和... 查看详情

设计模式之观察者模式

观察者模式:在对象之间定义一对多的依赖。这样一来当一个对象改变状态,依赖他的对象都会收到通知并自动更新。我觉得:观察者模式的关键在于使用统一定义的接口。通过接口来操作对象。观察者/被观察者分别通过接口... 查看详情

设计模式——观察者模式

  观察者模式(又被称为发布-订阅(Publish/Subscribe)模式,属于行为型模式的一种,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他... 查看详情

观察者模式observer

一、什么是观察者模式?观察者模式是对象的行为模式,又叫发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Dependents)模式。观察者模式定义了一种一对多的依赖关系,让多个观察者... 查看详情

观察者模式(observerpattern)(代码片段)

观察者模式一、什么是观察者模式???观察者模式(别名--发布-订阅)是软件设计模式的一种。观察者模式属于行为型模式。(行为型模型-特别关注对象之间的通信)??观察者模式(Observer)完美的将观察者和被观察的对象分离... 查看详情

设计模式之观察者模式

  观察者模式又称发布-订阅模式,是一种行为型模式。在此种模式中,一个目标物件管理所有相依于它的观察者物件,  并且在它本身的状态改变时主动发出通知。这种模式通常用来实现事件处理系统。  观察者模式完... 查看详情

行为模式之观察者模式(代码片段)

观察者模式(ObserverPattern)也称发布订阅模式,它是一种在项目中经常使用的模式。定义:定义对象间一种一对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新。观察者模式的类图... 查看详情

设计模式之观察者模式,个人感觉相当的重要

原文地址:点击就送观察者模式:(又被成为发布订阅模式,模型-视图模式,源-收听者模式或从属者模式)是软件设计模式的一种.在这种模式中,一个目标物件管理所有依赖于他的观察者物件,并且在它本身的状态改变时,主动发出通知.... 查看详情