zoukankan      html  css  js  c++  java
  • MementoPattern(备忘录模式)

    /**
     * 备忘录模式
     * @author TMAC-J
     * 用于存储bean的状态
     */
    public class MementoPattern {
        
        public class Memento{
            
            private int lifeValue;
            
            private int grade;
    
            public int getLifeValue() {
                return lifeValue;
            }
    
            public void setLifeValue(int lifeValue) {
                this.lifeValue = lifeValue;
            }
    
            public int getGrade() {
                return grade;
            }
    
            public void setGrade(int grade) {
                this.grade = grade;
            }
            
        }
        
        public class Originator{
            
            public Originator(int lifeValue,int grade) {
                this.grade = grade;
                this.lifeValue = lifeValue;
            }
            
            private int lifeValue;
            
            private int grade;
    
            public int getLifeValue() {
                return lifeValue;
            }
    
            public void setLifeValue(int lifeValue) {
                this.lifeValue = lifeValue;
            }
    
            public int getGrade() {
                return grade;
            }
    
            public void setGrade(int grade) {
                this.grade = grade;
            }
            
            public Memento createMemento(){
                Memento memento = new Memento();
                memento.setGrade(this.grade);
                memento.setLifeValue(this.lifeValue);
                return memento;
            }
            
            public void setMemento(Memento memento){
                this.lifeValue = memento.getLifeValue();
                this.grade = memento.getGrade();
            }
            
        }
        
        public class MementoManage{
            
            private Memento memento;
    
            public Memento getMemento() {
                return memento;
            }
    
            public void setMemento(Memento memento) {
                this.memento = memento;
            }
            
        }
        
        public void test(){
            Originator originator = new Originator(10,10);
            Memento memento = originator.createMemento();
            originator.setMemento(memento);
        }
        
    }
  • 相关阅读:
    linux 下怎么看postgresql安装到哪个目录了?
    sqlserver 存储image 语句
    thinkphp5.1 配置使用
    百度车牌识别demo
    elastticsearch 安装
    InDB开发
    John爆破密码
    域传送漏洞
    新远程下载方式(IME)
    SSH端口转发
  • 原文地址:https://www.cnblogs.com/yzjT-mac/p/6233725.html
Copyright © 2011-2022 走看看