php,java实现备忘录模式
2017-04-10 08:56
423 查看
适用于想要回复某个时间点的数据,类似于数据库的恢复。
类图:
![](http://img.blog.csdn.net/20170410083620886?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcmVucGVuZ2RkeHg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
java实现:
原始类
备忘录类
管理类
场景类
php实现
类图:
java实现:
原始类
public class Originator { private String status = ""; public void setStatus(String status){ this.status = status; } public String getStatus(){ return this.status; } public Memento createMemento(){ return new Memento(this.getStatus()); } public void restoreMemento(Memento memento){ this.setStatus(memento.getStatus()); } }
备忘录类
public class Memento { private String status=""; public Memento(String status){ this.status = status; } public void setStatus(String status){ this.status = status; } public String getStatus(){ return this.status; } }
管理类
public class MementoManager { private Memento memento; public void setMemento(Memento memento){ this.memento = memento; } public Memento getMemento(){ return memento; } }
场景类
ublic class Client { public static void main(String[] args){ Originator originator = new Originator(); MementoManager mementoManager = new MementoManager(); mementoManager.setMemento(originator.createMemento()); originator.restoreMemento(mementoManager.getMemento()); } }
php实现
class Originator { private $status = ''; public function setStatus($status) { $this->status = $status; } public function getStatus() { return $this->status; } public function createMemento() { return new Memento($this->status); } public function restorMemento(Memento $m) { $this->setStatus($m->getStatus()); } } class Memento { private $status; public function __construct($status) { $this->status = $status; } public function getStatus() { return $this->status; } } class MementoManager { private $memento; public function getMemento() { return $this->$memento; } public function setMemento(Memento $memento) { $this->memento = $memento; } }
相关文章推荐
- php实现设计模式之 备忘录模式
- php,java实现模板方法模式
- php、java实现桥接模式
- 详解备忘录模式及其在Java设计模式编程中的实现
- php,java实现组合模式
- 《大话设计模式》java实现之备忘录模式
- php,java实现门面(外观)模式
- DES ECB 模式 JAVA PHP C# 实现 加密 解密 兼容
- php,java实现装饰者模式
- php,java实现代理模式
- Java设计模式菜鸟系列(十九)备忘录模式建模与实现
- php、java实现单例模式
- php,java实现中介者模式
- php,java实现命令模式
- php、java实现状态模式
- php,java实现观察者模式
- php,java实现访问者模式
- php,java实现原型模式
- php,java实现建造者模式
- 备忘录模式及php实现