1. 程式人生 > 其它 >Java JDK自帶的觀察者設計模式

Java JDK自帶的觀察者設計模式

技術標籤:Java演算法及JDK原始碼探究日常小知識隨筆JDK 觀察者模式

觀察者是實現java.util.Observer介面
被觀察者是繼承java.util.Observable類

package com.cwq.beyond;
import java.util.Observable;
import java.util.Observer;



public class Temo {
	public static void main(String[] args) {
		PersonAll perAPerson = new PersonAll();
		PersonAll perBPerson =
new PersonAll(); PersonAll perCPerson = new PersonAll(); House house = new House(8000.00); house.addObserver(perAPerson); house.addObserver(perBPerson); house.addObserver(perCPerson); house.setPrice(900000); } } class PersonAll implements Observer{ @Override public void update(Observable o, Object arg)
{ if (o instanceof House) { if (arg instanceof Double) { System.out.println("[人民關注],房價上漲:"+ arg); } } } } class House extends Observable{ // 被觀察者 private double price; // 被觀察者 public House(Double price) { this.price = price; } public void setPrice(double price) { if
(this.price < price) { super.setChanged(); super.notifyObservers(price); } this.price = price; } }

在這裡插入圖片描述
在這裡插入圖片描述