程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 輕松控制Java備忘錄形式

輕松控制Java備忘錄形式

編輯:關於JAVA

輕松控制Java備忘錄形式。本站提示廣大學習愛好者:(輕松控制Java備忘錄形式)文章只能為提供參考,不一定能成為您想要的結果。以下是輕松控制Java備忘錄形式正文


界說:保留一個對象的某個狀況,以便在恰當的時刻恢復對象

特色:

    1、給用戶供給了一種可以恢復狀況的機制,可使用戶可以或許比擬便利地回到某個汗青的狀況。

    2、完成了信息的封裝,使得用戶不須要關懷狀況的保留細節。

企業級運用和經常使用框架中的運用:罕見文本編纂器應用了該形式

實例:

留意:該實例中只要撤消操作,沒有向前復原操作

/**
 * 目的對象:將要被備忘的對象
 */
class Word {

 private String content;
 private String image;
 private String table;
 public Word(String content, String image, String table) {
 super();
 this.content = content;
 this.image = image;
 this.table = table;
 }
 
 public WordMemento memento(){
 return new WordMemento(this);
 }
 
 public void recovery(WordMemento memento){
 this.content = memento.getContent();
 this.image = memento.getImage();
 this.table = memento.getTable();
 }
 
 public String getContent() {
 return content;
 }
 public void setContent(String content) {
 this.content = content;
 }
 public String getImage() {
 return image;
 }
 public void setImage(String image) {
 this.image = image;
 }
 public String getTable() {
 return table;
 }
 public void setTable(String table) {
 this.table = table;
 }
}

/**
 * 備忘錄對象
 */
class WordMemento{
 private String content;
 private String image;
 private String table;
 
 public WordMemento(Word word) {
 this.content = word.getContent();
 this.image = word.getImage();
 this.table = word.getTable();
 }
 public String getContent() {
 return content;
 }
 public void setContent(String content) {
 this.content = content;
 }
 public String getImage() {
 return image;
 }
 public void setImage(String image) {
 this.image = image;
 }
 public String getTable() {
 return table;
 }
 public void setTable(String table) {
 this.table = table;
 }
}
/**
 * 擔任人對象:擔任記載備忘錄對象
 */
class CareTaker{

 private List<WordMemento> list = new ArrayList<>();
 private int index = 0;
 
 public void setMemento(WordMemento memento){
 list.add(memento);
 this.index = list.size();
 }
 
 public WordMemento getWordMemento(){
 if(index == 0){
  System.out.println("沒有可復原的內容");
  return null;
 }
 WordMemento memento = list.get(index-1);
 list.remove(index-1);
 index--;
 return memento;
 }
}

以上就是本文的全體內容,願望對年夜家的進修有所贊助,也願望年夜家多多支撐。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved