java中观察者模式的实现
时间: 2024-05-08 17:21:17 浏览: 78
在 Java 中观察者模式的实现需要以下几个步骤:
1. 定义一个被观察者类,并在其中定义一个观察者列表和添加、删除观察者的方法。
```java
import java.util.ArrayList;
import java.util.List;
public class Subject {
private List<Observer> observers = new ArrayList<>();
public void attach(Observer observer) {
observers.add(observer);
}
public void detach(Observer observer) {
observers.remove(observer);
}
public void notifyObservers() {
for (Observer observer : observers) {
observer.update();
}
}
}
```
2. 定义一个观察者接口,并在其中定义一个更新方法。
```java
public interface Observer {
void update();
}
```
3. 实现观察者接口,定义更新方法的具体实现。
```java
public class ConcreteObserver implements Observer {
@Override
public void update() {
System.out.println("观察者收到消息并进行处理");
}
}
```
4. 在客户端代码中创建被观察者对象和观察者对象,并将观察者对象添加到被观察者的观察者列表中。
```java
public class Client {
public static void main(String[] args) {
Subject subject = new Subject();
Observer observer = new ConcreteObserver();
subject.attach(observer);
subject.notifyObservers();
}
}
```
以上就是 Java 中观察者模式的简单实现过程,通过观察者模式可以实现对象之间的松耦合,使得被观察者对象的改变不会直接影响到观察者对象。
阅读全文