我们先设定游戏的主角
主角(role)有属性:
vit:生命力
atk:攻击力
def:防御力
为了保存进度,我们需要保存相关的数据。这些主角属性的值都必须被保存起来。但是我们细想如果在main函数中保存,这里会出现这样的情况。。。
main(){
backupRoleVit = role.getRoleVit()
backupRoleAtk = role.getRoleAtk)
backupRoleDef = role.getRoleDef()
}
如果需求一变更 ,我们要保存个魔法力的话,我们还要再main函数添加,我们希望把保存进进度的细节封装起来,但又不想用clone方法一样暴露太多接口。
这时候,备忘录模式就可以很好的解决问题了
游戏角色类:
package com.jing.memento;
/**
* 游戏角色
* @author Administrator
*
*/
public class GameRole {
private int vit;
private int atk;
private int def;
public int getVit() {
return vit;
}
public void setVit(int vit) {
this.vit = vit;
}
public int getAtk() {
return atk;
}
public void setAtk(int atk) {