在 java 中,使用 observable 和 observer 界面可以通过将观察者附加到可观察对象中来实现可观察模式。当可观察对象的状态发生变化时,观察者将得到通知。
使用 Java 框架实现可观察模式
引言
当状态发生变化时,可观察模式是一种允许对象通知依赖对象的设计模式。 Java 中,可使用 Observable 和 Observer 接口实现可观察模式。
立即学习“Java免费学习笔记(深入);
实现
要实现可观察模式,首先需要创建 Observable 类。Observable 该类包含一个观察者列表,当该类状态发生变化时,将通知这些观察者。
接下来,创建 Observer 接口。Observer 界面定义了当 Observable 调用对象状态发生变化时的方法。
实战案例
考虑以下示例,其中 WeatherData 类是 Observable 它代表天气数据。我们还定义了一个子类 Display 类,它实现了分析器接口,并显示了天气数据。
public class WeatherData extends Observable { private float temp; private float humid; private float pressure; public void setMeasurements(float temp, float humid, float pressure) { this.temp = temp; this.humid = humid; this.pressure = pressure; setChanged(); notifyObservers(); } } public class Display implements Observer { @Override public void update(Observable o, Object arg) { if (o instanceof WeatherData) { WeatherData data = (WeatherData) o; System.out.println("Current measurements: " + data.getMeasurements()); } } } public class Main { public static void main(String[] args) { WeatherData weatherData = new WeatherData(); Display display = new Display(); weatherData.addObserver(display); weatherData.setMeasurements(30.0f, 60.0f, 1013.25f); } }
输出
本代码将打印以下输出:
Current measurements: [temp=30.0, humid=60.0, pressure=1013.25]
总结
通过使用 Observable 和 Observer 接口,可以在 Java 实现可观察模式。这是一种强大的模式,可用于解耦对象及其依赖对象。
以上是java框架如何实现可观察模式?详情请关注图灵教育的其他相关文章!