//窄接口
public interface zai {
}
//黑箱备忘录
@Data
public class baochun {
private int vit;
private int atk;
private int def;
public baochun() {
csh();
}
//恢复默认值
public void csh(){
vit=5;
atk=5;
def=5;
}
//修改测试
public void zd(){
vit=0;
atk=0;
def=0;
}
//保存状态
public zai dao(){
return new zi(vit,atk,def);
}
//恢复
public void hf(zai z){
zi a= (zi) z;
System.out.println(this.vit+"--->"+a.getVit());
this.vit=a.getVit();
this.def=a.getDef();
this.atk=a.getAtk();
}
@Data
protected class zi implements zai{
private int vit;
private int atk;
private int def;
public zi(int vit, int atk, int def) {
this.vit = vit;
this.atk = atk;
this.def = def;
}
}