当前位置: 首页 > news >正文

wordpress网站的彻底清理购物网站界面设计策划

wordpress网站的彻底清理,购物网站界面设计策划,个人怎么注册商贸公司,如何百度搜索到自己的网站设计模式—行为型模式之备忘录模式 备忘录(Memento)模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,以便以后当需要时能将该对象恢复到原先保存的状态。该模式又叫快照模…

设计模式—行为型模式之备忘录模式

备忘录(Memento)模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,以便以后当需要时能将该对象恢复到原先保存的状态。该模式又叫快照模式。这是一种对象行为型模式。

有如下角色:

  • 发起人(Originator)角色:记录当前时刻的内部状态信息,提供创建备忘录和恢复备忘录数据的功能,实现其他业务功能,它可以访问备忘录里的所有信息。

  • 备忘录(Memento)角色:负责存储发起人的内部状态,在需要的时候提供这些内部状态给发起人。

  • 管理者(Caretaker)角色:对备忘录进行管理,提供保存与获取备忘录的功能,但其不能对备忘录的内容进行访问与修改。

示例

比如我们有一个奥特曼游戏,每一个奥特曼有血量,等级,我们可以建一个游戏备份来保存这些有用的内容,并使用游戏服务器管理他们。

奥特曼类如下:

@Data
public class Ultraman {private Integer hp;//血量private Integer level;//等级//备忘录管理者private GameServer gameServer = new GameServer();/*** 进行游戏*/public void play(){hp = level = new Random().nextInt();}/*** 保存备忘录*/public void saveRocord() throws Exception {System.out.println("保存备忘录");gameServer.addRecord(this);}/*** 获取备忘录*/public Ultraman restoreRecord(Integer id) throws Exception {System.out.println("获取记录");return gameServer.getRecord(id);}public void exit() throws Exception {System.out.println("退出并存档");gameServer.addRecord(this);}
}

记录类如下:

/*** 游戏备份----备忘录*/
@Data
public class GameRocord {private Integer id;//备忘录idprivate Integer hp;//血量private Integer level;//等级
}

游戏服务器类如下:

/*** 游戏服务器——备忘录管理者*/
public class GameServer {//记录idprivate Integer i = 1;//备忘录管理private Map<Integer,GameRocord> recordMap = new HashMap<>();/*** 添加备忘录*/public void addRecord(Ultraman ultraman) throws Exception {GameRocord gameRocord = new GameRocord();BeanUtils.copyProperties(gameRocord,ultraman);gameRocord.setId(i++);recordMap.put(gameRocord.getId(),gameRocord);}/*** 恢复备忘录*/public Ultraman getRecord(Integer id) throws Exception{GameRocord gameRocord = recordMap.get(id);Ultraman ultraman = new Ultraman();BeanUtils.copyProperties(ultraman,gameRocord);return ultraman;}}

测试类如下:

public class MementoTest {public static void main(String[] args) throws Exception {Ultraman ultraman = new Ultraman();//进行游戏ultraman.play();//存档ultraman.saveRocord();ultraman.setHp(1);ultraman.saveRocord();Ultraman ultramanRecord = ultraman.restoreRecord(1);ultraman.exit();}
}

运行截图如下:

运行截图

http://www.yayakq.cn/news/947048/

相关文章:

  • 中国十大品牌网站爱情动作片做网站
  • 如何外贸网站推广那个网站做图片好看
  • 音乐网站建设规划书已有的网站如何做排名优化
  • 中文域名转码网站郑州手机网站建设多少钱
  • 买个网站域名要多少钱一年app网站开发多少钱
  • 宁波模版建站公司重庆建站免费模板
  • 东莞建设建网站谷歌seo和百度seo的区别
  • 莆田市商城网站建设免费网站建设培训学校
  • 果业局网站建设品牌设计包括哪些
  • 郑州建网站哪个公司好国内最大的几个手游加盟平台
  • 福州仓前网站建设如何查询网站备案进度
  • 宿迁网站建设公司手机怎么做ppt
  • 济南百度网站开发wordpress上传类型
  • 制作一个网站要花多少钱淘客网站做的好的
  • 做网站要学c语言wordpress多语言主题
  • 南京做网站需要多少钱综合类网站怎么做
  • 上海网站建设app建站宝盒里的手机网站
  • 简单的视频网站能不能用dw做做网站的html代码格式
  • 建设 春风 摩托车官方网站昆明网站建设搜王道下拉
  • 自己做网站需要什么福州seo排名公司
  • 哪些企业用wordpress建站天津市建设
  • 竞价网站建设苏州区建设局网站首页
  • 农村电商网站设计与发展现状网站编辑seo
  • 怎么用文本做网站三亚网站开发公司
  • 石家庄网站建站php做的商城网站必备功能
  • 宣城市建设银行网站首页网站主机免备案吗
  • 大淘客网站代码图书大厦网站建设报告
  • 购物网站开发模板网络广告销售
  • 公司有网站域名,如何做网站网站建设的经验总结
  • 模板建站影响网站的优化排名深圳工业设计公司排行榜