<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    本站不再更新,歡迎光臨 java開發(fā)技術(shù)網(wǎng)
    隨筆-230  評(píng)論-230  文章-8  trackbacks-0

    Memento的定義:
    ?????? Memento是一個(gè)保存另外一個(gè)對(duì)象的內(nèi)部狀態(tài)拷貝的對(duì)象,這樣就可以把對(duì)象恢復(fù)到原先狀態(tài)。

    確的沒必要用這個(gè)東西,耗內(nèi)存,麻煩。我想備份對(duì)象為什么不用對(duì)象的深度拷貝呢。這樣不是很省事嗎?誰能告訴我一個(gè)理由呢?

    下面是一個(gè)Memento模式例子,很簡單:
    package com.pdw.pattern;

    import java.io.*;
    import java.util.*;

    class Originator{
    ?private int number;
    ?private File file;
    ?
    ?
    ?
    ?
    ?public File getFile() {
    ??return file;
    ?}

    ?public void setFile(File file) {
    ??this.file = file;
    ?}

    ?public int getNumber() {
    ??return number;
    ?}

    ?public void setNumber(int number) {
    ??this.number = number;
    ?}

    ?public Originator(){}
    ?//創(chuàng)建備份
    ?public Memento getMemento(){
    ??return new Memento(this);
    ?}
    ?//恢復(fù)到原始值
    ?public void setMemento(Memento m){
    ??this.file=m.getFile();
    ??this.number=m.getNumber();
    ?}
    }
    class Memento implements Serializable{
    ?private? int number;
    ?private? File file;

    ?public File getFile() {
    ??return file;
    ?}

    ?public void setFile(File file) {
    ??this.file = file;
    ?}

    ?public int getNumber() {
    ??return number;
    ?}

    ?public void setNumber(int number) {
    ??this.number = number;
    ?}

    ?public Memento(Originator o){
    ??this.number=o.getNumber();
    ??this.file=o.getFile();
    ?}
    ?
    }
    public class MemebtoImpl {

    ?/**
    ? * @param args
    ? */
    ?public static void main(String[] args) {
    ??// TODO Auto-generated method stub
    ??Originator o=new Originator();
    ??o.setNumber(100);
    ??Memento m=o.getMemento();//建備一個(gè)備份對(duì)象
    ??o.setNumber(50); //改變對(duì)象屬性
    ??o.setMemento(m); //還原
    ??System.out.println(o.getNumber());
    ?}

    }

    posted on 2006-07-10 22:58 有貓相伴的日子 閱讀(349) 評(píng)論(0)  編輯  收藏 所屬分類: Patterns
    本站不再更新,歡迎光臨 java開發(fā)技術(shù)網(wǎng)
    主站蜘蛛池模板: 久久久久亚洲Av片无码v| 亚洲视频在线观看免费视频| 91亚洲国产成人精品下载| 婷婷亚洲天堂影院| 国产精品视频免费一区二区| 亚洲美国产亚洲AV| 久久精品国产亚洲| 成年18网站免费视频网站| 99热精品在线免费观看| 一级特黄色毛片免费看| 久久亚洲免费视频| 中文字幕精品亚洲无线码一区| 久久这里只精品热免费99| 亚洲 日韩 色 图网站| 日韩精品亚洲人成在线观看| 成人毛片18岁女人毛片免费看| 99精品免费观看| 日本一卡精品视频免费| 免费人成激情视频在线观看冫| 一级做a免费视频观看网站| 最新亚洲人成网站在线观看| 亚洲乱妇老熟女爽到高潮的片| 亚洲av无码电影网| 亚洲av片不卡无码久久| 亚洲av无码久久忘忧草| 亚洲一区二区三区亚瑟| 亚洲黄色免费电影| 亚洲视频免费一区| 亚洲精品自拍视频| 亚洲国产精品xo在线观看| 亚洲免费视频播放| 亚洲午夜国产精品| 亚洲AV成人影视在线观看| 亚洲欧美黑人猛交群| 亚洲精品无码成人| 国产精品亚洲精品日韩动图| 日韩大片免费观看视频播放| 亚洲AV无码一区二区三区人| 亚洲一区二区三区无码国产| 亚洲狠狠成人综合网| 亚洲avav天堂av在线网毛片|