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

景观设计师如何做网站wordpress折叠菜单插件

景观设计师如何做网站,wordpress折叠菜单插件,西安网站建设公司都有哪些,我想阻止一个网站要怎么做1 备忘录模式介绍 备忘录模式(memento pattern)定义: 在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态. 2 备忘录模式原理 3 备忘录模式实现 /*** 发起人角色**/ public class Originator {private Strin…1 备忘录模式介绍 备忘录模式(memento pattern)定义: 在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态. 2 备忘录模式原理 3 备忘录模式实现 /*** 发起人角色**/ public class Originator {private String state 原始对象;private String id;private String name;private String phone;public Originator() {}//创建备忘录对象public Memento createMemento(){return new Memento(id,name,phone);}//恢复对象public void restoreMemento(Memento m){this.state m.getState();this.id m.getId();this.name m.getName();this.phone m.getPhone();}Overridepublic String toString() {return Originator{ state state \ , id id \ , name name \ , phone phone \ };}public String getState() {return state;}public void setState(String state) {this.state state;}public String getId() {return id;}public void setId(String id) {this.id id;}public String getName() {return name;}public void setName(String name) {this.name name;}public String getPhone() {return phone;}public void setPhone(String phone) {this.phone phone;} }/*** 备忘录角色* 访问权限为: 默认,在同包下可见(尽量保证只有发起者类可以访问备忘录类)**/ class Memento {private String state 从备份对象恢复原始对象;private String id;private String name;private String phone;public Memento() {}public Memento(String id, String name, String phone) {this.id id;this.name name;this.phone phone;}public String getState() {return state;}public void setState(String state) {this.state state;}public String getId() {return id;}public void setId(String id) {this.id id;}public String getName() {return name;}public void setName(String name) {this.name name;}public String getPhone() {return phone;}public void setPhone(String phone) {this.phone phone;}Overridepublic String toString() {return Memento{ state state \ , id id \ , name name \ , phone phone \ };} }/*** 负责人类-获取和保存备忘录对象**/ public class Caretaker {private Memento memento;public Memento getMemento() {return memento;}public void setMemento(Memento memento) {this.memento memento;} }public class Client {public static void main(String[] args) {//创建发起人对象Originator o1 new Originator();o1.setId(1);o1.setName(spike);o1.setPhone(13522777722);System.out.println(o1);//创建负责人对象Caretaker caretaker new Caretaker();caretaker.setMemento(o1.createMemento());//修改o1.setName(update);System.out.println( o1);//从负责人对象中获取备忘录对象,实现恢复操作o1.restoreMemento(caretaker.getMemento());System.out.println( o1);} }4 备忘录模式应用实例 /*** 备份玩家的状态**/ class Memento {private int money; //玩家获取的金币ArrayList fruits; //玩家获取的水果public Memento(int money) {this.money money;this.fruits new ArrayList();}//获取当前玩家的金币public int getMoney(){return money;}//获取当前玩家的水果List getFruits(){return (List) fruits.clone();}//添加水果void addFruit(String fruit){fruits.add(fruit);}}Player玩家类,只要玩家的金币还够,就会一直进行游戏,在该类中会设置一个createMemento方法,其作用是保存当前玩家状态.还会包含一个restore撤销方法,相当于复活操作. /*** 玩家类**/ public class Player {private int money; //金币private ListString fruits new ArrayList(); //玩家获得的水果private static String[] fruitsName { //表示水果种类的数组苹果,葡萄,香蕉,橘子};Random random new Random();public Player(int money) {this.money money;}//获取当前所有金币public int getMoney(){return money;}//获取一个水果public String getFruit(){String prefix ;if(random.nextBoolean()){prefix 好吃的;}//从数组中拿一个水果String f fruitsName[random.nextInt(fruitsName.length)];return prefix f;}//掷骰子方法public void yacht(){int dice random.nextInt(6) 1; //掷骰子if(dice 1){money 100;System.out.println(所持有的金币增加了...);}else if(dice 2){money / 2;System.out.println(所持有的金币减少一半);}else if(dice 6){ //获取水果String fruit getFruit();System.out.println(获取了水果: fruit);fruits.add(fruit);}else{//其他结果System.out.println(无效数字,继续投掷!);}}//拍摄快照public Memento createMemento(){Memento memento new Memento(money);for (String fruit : fruits) {//判断: 只保存 好吃的水果if(fruit.startsWith(好吃的)){memento.addFruit(fruit);}}return memento;}//撤销方法public void restoreMemento(Memento memento){this.money memento.getMoney();this.fruits memento.getFruits();}Overridepublic String toString() {return Player{ money money , fruits fruits };} }测试: 由于引入了备忘录模式,可以保存某个时间点的玩家状态,这样就可以对玩家进行复活操作. public class MainApp {public static void main(String[] args) throws InterruptedException {//创建玩家类,设置初始金币Player player new Player(100);//创建备忘录对象Memento memento player.createMemento();for (int i 0; i 100; i) {//显示扔骰子的次数System.out.println(第 i次投掷!);//显示当前玩家状态System.out.println(当前状态: player);//开启游戏player.yacht();System.out.println(玩家所持有的金币: player.getMoney() 元);//复活操作if(player.getMoney() memento.getMoney()){System.out.println(赚到金币,保存当前状态,继续游戏!);memento player.createMemento(); //更新快照}else if(player.getMoney() memento.getMoney() / 2){System.out.println(所持金币不多,将游戏恢复到初始状态!);player.restoreMemento(memento);}Thread.sleep(1000);}} }5 备忘录模式总结
http://www.hkea.cn/news/14400836/

相关文章:

  • 自适应网站建设哪家好代理网站是什么
  • 域名有关的网站wordpress网站搭建教程视频
  • 专业做化妆品的网站有哪些合肥模板建站多少钱
  • 企业网站改一下多少钱织梦个人网站模版
  • 贵州住房和城乡建设厅网站网站建设违约合同
  • 网站怎么做才是对搜索引擎友好重庆电商网站建设费用
  • 网站建设与企业管理心得体会name域名的网站
  • 网站域名备案注册证书wordpress 回收站在哪个文件夹
  • 给一个公司做网站需要什么内容做图像网站
  • 企业网站建设专业wordpress 留言页面
  • 企业网站策划案模板大连专业企业建站找哪家
  • 房地产网站cms贵阳公司电话号码大全
  • 模型网站大全免费怎样做影视网站不侵权
  • 如何攻击织梦做的网站方法html5在线代码编辑器
  • 自助建站系统搭建网站wordpress更改页面设置
  • 自己怎么手机做网站wordpress实现pdf浏览器
  • 西宁手机网站微站建设wordpress 提问
  • 电子商务网站建设ppt模板广州网站建设新锐
  • 电子商务网站开发实例做新媒体应该关注什么网站
  • 网站备案包括哪些宁夏做网站
  • 有趣的网站代码wordpress squarespace
  • 杭州国外网站推广公司怎么做自己的音乐网站
  • 电子商务网站建设的大纲手机微网站开发的目的和意义
  • 随州网站建设便宜寿光建设网站
  • 废橡胶网站建设wordpress 申请表单
  • 网站设计培训费用是多少企业展厅设计公司有哪些
  • 青海网站开发wordpress财务会计系统
  • 专业建站公司的业务内容有哪些用wordpress建站一个人可以吗
  • 广西造建设工程协会网站摄影作品网站推荐
  • 网站内链建设不可忽视的地方做网站的是怎么赚钱