動作モードどうさもーど:メモリモードきおくもーど
紹介する
カプセル化したまま、オブジェクトの内部状態を外部に保存する方法です.オブジェクトの状態を外部に保存し、その状態に戻すことができます.
1)メリット
ステータスオブジェクトスナップショットは、
2)欠点
大量の情報を格納するMememberを頻繁に作成すると、メモリの使用量に悪影響を及ぼします.
インプリメンテーション
1)Memantoクラスの実装
@Getter
public final class GameSave {
private final int blueTeamScore;
private final int redTeamScore;
public GameSave(int blueTeamScore, int redTeamScore) {
this.blueTeamScore = blueTeamScore;
this.redTeamScore = redTeamScore;
}
}
2)Originator実施
@Getter
@Setter
public class Game {
private int redTeamScore;
private int blueTeamScore;
public GameSave save() {
return new GameSave(this.blueTeamScore, this.redTeamScore);
}
public void restore(GameSave gameSave) {
this.blueTeamScore = gameSave.getBlueTeamScore();
this.redTeamScore = gameSave.getRedTeamScore();
}
}
使用
public class Client {
public static void main(String[] args) {
Game game = new Game();
game.getBlueTeamScore(10);
game.getRedTeamScore(20);
GameSave save = game.save();
game.setBlueTeamScore(12);
game.setRedTeamScore(22);
game.restore(save);
}
}
Reference
この問題について(動作モードどうさもーど:メモリモードきおくもーど), 我々は、より多くの情報をここで見つけました https://velog.io/@zenon8485/행동-패턴-메멘토-패턴テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol