观察者模式定义对象间的一种一对多依赖关系,使得每当一个对象改变状态,则其相关依赖对象皆得到通知并被自动更新。
Subject(目标)知道它的观察者,可以有多个观察者观察同一个目标;提供注册和删除观察者对象的接口。
Observer(观察者)定义一个更新接口,在一个被观察对象改变时应被通知。
Concrete Subject(具体被观察对象)存储具体观察者,当其状态改变时,发送一个通知给其所有的观察者对象。
Concrete Observer(具体观察者)维护一个对Concrete Subject对象的引用。
/**
* 观察者接口
*/
public interface Observer {
void update(String message);
}
/**
* 具体观察者
*/
public class ConcreteObserver implements Observer {
private String name;
public ConcreteObserver(String name) {
this.name = name;
}
@Override
public void update(String message) {
System.out.println(name + " received message: &#
标签:String,Observer,对象,观察者,public,name
From: https://blog.csdn.net/duyuchong/article/details/145242181