分类8 状态管理
2019-05-09 10:16:31 0 举报
设计模式
作者其他创作
大纲/内容
ConcreteSubject
跟策略模式的架构相同,但是解决的问题领域不同策略模式,强调更换不同的算法,比如导出不同格式的文件(不会在导出过程中变更算法)状态模式,强调状态迁移。比如线程的状态变化,是随时可变的
Originator
createMementorestoreMemento
Context
state
Memento memo = originator.createMemento();// 一些处理originator.restoreMemento(memo);
Memento 备忘录模式
Observer
update(subject)
public abstract class Subject { private List<Observer> observers; public void notify(){ for (Observer observer: observers) { observer.notify(this); } }}public abstract class Observer{ public void update (Subject subject){ xxx }}
ConcreteState2
method1method2
ConcreteObserver1
State
Caretaker
State 状态模式
用于 Undo、Redo 等操作
Subject
observers
addObservernotify
ConcreteState1
Memento
public 接口package 接口
ConcreteObserver2
Observer 观察者模式 (发布-订阅模式)
0 条评论
下一页