java 观察者模式——主题订阅

来源:互联网 发布:淘宝男网红店铺top前10 编辑:程序博客网 时间:2024/05/17 07:02

             观察者模式定义了一个对象和对个对象之间的一对多的依赖关系,当位于“一”方的状态变化时,将通知其他对象进行更新。

            下面做一个新生到来时,自动通知班长和校长。

         

package com.observer;import java.util.Observable;import java.util.Observer;public class Master implements Observer {@Overridepublic void update(Observable o, Object arg) {System.out.println("校长收到新生ID是"+arg.toString());}}

package com.observer;import java.util.Observable;import java.util.Observer;public class Moniter implements Observer{@Overridepublic void update(Observable o, Object arg) {System.out.println("班长收到了新生ID 是"+arg.toString());}}

package com.observer;import java.util.Observable;public class Studentbean extends Observable{static final Master MASTER=new Master();static final Moniter MONITER=new Moniter();int id;public int getId() {return id;}public void setId(int id) {this.id = id;}public Studentbean(int id) {super();this.id=id;addObserver(MONITER);addObserver(MASTER);}void save(){System.out.println("新生入学");setChanged();notifyObservers(id);}}

package com.observer;public class Test {public static void main(String[] args) {Studentbean student=new Studentbean(11);student.save();}}



0 0
原创粉丝点击