`
hcx2013
  • 浏览: 88831 次
社区版块
存档分类
最新评论

Observer

 
阅读更多

      观察者模式是对象的行为模式,又叫发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Dependents)模式。

  观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使它们能够自动更新自己。


 

package cn.xidian.Design.Patterns;

import java.util.Observable;
import java.util.Observer;

public class myObserver implements Observer {

	@Override
	public void update(Observable o, Object arg) {
		System.out.println(((myObservable)o).getData());
		System.out.println(arg);
	}
	
}

 

package cn.xidian.Design.Patterns;

import java.util.Observable;

public class myObservable extends Observable {

	private String arg = "Observer design pattern";
	private String data = "";
    
    public String getData() {
        return data;
    }
    
    public void setData(String data) {
        
        if(!this.data.equals(data)){
            this.data = data;
            setChanged();
        }
        notifyObservers(arg+getData());
    }
}

 

package cn.xidian.Design.Patterns;

public class Test {
	public static void main(String[] args) {
		myObservable observable = new myObservable();
		myObserver observer = new myObserver();
		observable.addObserver(observer);
		observable.setData("1");
		observable.setData("2");
		observable.setData("3");
	}
}

 
 

  • 大小: 34.7 KB
分享到:
评论

相关推荐

    Observer设计模式实例

    Observer设计模式,也被称为“发布-订阅”(Publish-Subscribe)模式或“依赖倒置”模式,是软件设计中的一种行为模式。它定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到...

    观察者模式,Observer

    观察者模式(Observer Pattern)是设计模式中的一种行为模式,它定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并被自动更新。这种模式常用于实现事件驱动的系统或者...

    Observer模式

    Observer模式,也被称为“发布-订阅”模式,是软件设计模式中的行为模式之一。它定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新。Observer模式是实现...

    Android observer 使用demo

    在Android开发中,Observer模式是一种常见的设计模式,用于实现对象之间的通信和状态更新。Observer模式的核心思想是"一对多"的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新。...

    Observer模式代码实现

    ### Observer模式代码实现 #### 观察者模式简介 观察者模式(Observer Pattern)是一种行为设计模式,它定义了对象间的一种一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动...

    observer观察者模式

    观察者模式(Observer Pattern)是一种行为设计模式,它允许你定义一个订阅机制,可以在对象状态改变时通知多个“观察”该对象的其他对象。在软件工程中,这常用于实现事件驱动编程,使得系统能够及时响应变化。 在...

    我的图像处理工具-Observer

    在多年的图像处理工作中, 深感有必要自己开发一个开发一个集图像的显示, 变换, 各种处理分析测试的工具平台, 这就是Observer. 取名为Observer, 是因为我觉得图像的处理与分析依赖于对图像的细致观察. Observer的...

    设计模式C++学习之观察者模式(Observer)

    观察者模式(Observer)是软件设计模式中的一种行为模式,它定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并被自动更新。这种模式在C++中广泛应用,特别是在需要...

    Observer and Reactor 观察者和recator的比较

    "Observer(观察者)"和"Reactor(反应器)"是两种广泛应用于并发和事件驱动编程的设计模式。 Observer模式的核心在于定义了一对多的依赖关系,当一个对象(主题)的状态发生改变时,所有依赖于它的对象都会被自动...

    C++、MFC源代码observer

    "Observer"模式是设计模式的一种,属于行为设计模式,它定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新。 Observer模式的核心概念在于发布(Publish)和...

    OBserver模式设计实现

    观察者模式(Observer Pattern)是一种行为设计模式,它允许你定义一个订阅机制,可以在对象状态改变时通知多个“观察”该对象的其他对象。在Java和C++等面向对象编程语言中,这种模式广泛用于事件处理和实时系统,...

    Observer_exsample_observer_观测器_观测_状态观测器_

    在这个Observer_exsample_observer案例中,我们关注的是如何使用Simulink来设计和仿真一个状态观测器,特别是针对弹簧阻尼系统的应用。 首先,让我们了解一下状态观测器的基本原理。在控制系统中,我们通常只能获得...

    Disturbance Observer-Based Control_ Methods and Applications

    干扰观测器(Disturbance Observer, DO)是一种用于提高控制系统性能的技术手段。它通过对系统输出信号进行处理来估计外界干扰,并将这些估计值反馈到控制器中,从而实现对干扰的有效抑制。DO技术在现代控制领域中...

    Observer例子

    "Observer"模式是其中的一种行为设计模式,它定义了对象间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新。在这个"Observer例子"中,我们将探讨如何在实际编程中应用...

    NewX_CodeProj_Observer.zip

    观察者模式(Observer Pattern)是设计模式中的一种行为模式,它定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并被自动更新。在.NET框架中,我们可以使用不同的方式...

    Observer与Command模式在VTK类库设计中的应用研究

    ### Observer与Command模式在VTK类库设计中的应用研究 #### 一、引言 VTK(Visualization Toolkit)是一套开源的三维可视化开发库,在国外得到了广泛应用,而在国内的研究相对较少,导致其应用受到一定限制。为了...

    com.designpattern.state_observer.rar

    - **具体观察者类(Concrete Observer Classes)**:实现观察者接口,订阅状态变化并处理通知。 通过分析和学习这些示例代码,开发者可以更好地理解和应用这两种设计模式,提升他们的编程技巧,同时也能提高软件的...

    Laravel开发-artisan-observer-maker

    本篇将深入探讨`artisan observer maker`,它是Laravel提供的一个命令,用于简化创建观察者类的过程。 观察者模式是一种设计模式,它允许我们定义一组订阅者,当对象的状态发生变化时,这些订阅者会自动收到通知并...

    设计模式之观察者模式(Observer Pattern)

    在观察者模式中,通常有两个主要角色:主题(Subject)和观察者(Observer)。主题是被观察的对象,它持有一个观察者列表,并负责通知这些观察者状态的变化。观察者是依赖主题的对象,当接收到主题的通知时,它们会...

    简单理解观察者模式(Observer)

    观察者模式(Observer Pattern)是设计模式中的一种行为模式,它定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并被自动更新。这种模式常用于实现事件驱动的编程模型...

Global site tag (gtag.js) - Google Analytics