消费者模式

    xiaoxiao2021-03-25  87

    public interface Observe{ //更新的接口 subject:传入目标对象,方便获取相应的目标对象和状态 public void update(Subject Subject); } public class ConcreteObserver implements Observe{ private String ObserveState; //观察者的状态 @Override public void update(Subject Subject){ ObserveState = ((ConcreteSubject)subject).getSubjectState(); } } public class ConcreteSubject extends Subject{ //目标对象的状态 private String subjectState; public String getSubjectState(){ return subjectState; } } public void setSubjectState(String subjectState){ this.subjectState = subjectState; this.notifyObserves(); } public class Subject{ //用来保存注册的观察者对象 private List<Observe> observes = new ArrayList(); public void attach(Observe observes){ observes.add(observe); } //删除集合中指定的观察者 public void detach(Observe observe){ observes.remove(observe); } //通知所有注册的观察者 protected void notifyObserves(){ for(Observe observe: observes){ observe.update(this); } } }
    转载请注明原文地址: https://ju.6miu.com/read-33221.html

    最新回复(0)