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

网站推广seo是什么wordpress 去除顶部

网站推广seo是什么,wordpress 去除顶部,自己做网站哪种好做,系统运维引言:对象状态的时空穿越 在软件开发中,我们经常遇到需要保存和恢复对象状态的场景: 文本编辑器的撤销/重做功能游戏进度的存档与读档事务操作的回滚机制表单数据的草稿保存备忘录模式正是为解决这类问题而生的设计模式。它提供了一种在不破坏封装性的前提下捕获并外部化对…引言:对象状态的时空穿越 在软件开发中,我们经常遇到需要保存和恢复对象状态的场景: 文本编辑器的撤销/重做功能游戏进度的存档与读档事务操作的回滚机制表单数据的草稿保存备忘录模式正是为解决这类问题而生的设计模式。它提供了一种在不破坏封装性的前提下捕获并外部化对象的内部状态,以便在需要时恢复对象到先前状态的能力。本文将深入剖析备忘录模式的原理、实现及高级应用场景。 一、模式定义与核心思想 1.1 官方定义 备忘录模式 (Memento Pattern):在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 1.2 设计哲学 #mermaid-svg-TY3voL6sUTgEKCed {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-TY3voL6sUTgEKCed .error-icon{fill:#552222;}#mermaid-svg-TY3voL6sUTgEKCed .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-TY3voL6sUTgEKCed .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-TY3voL6sUTgEKCed .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-TY3voL6sUTgEKCed .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-TY3voL6sUTgEKCed .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-TY3voL6sUTgEKCed .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-TY3voL6sUTgEKCed .marker{fill:#333333;stroke:#333333;}#mermaid-svg-TY3voL6sUTgEKCed .marker.cross{stroke:#333333;}#mermaid-svg-TY3voL6sUTgEKCed svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-TY3voL6sUTgEKCed .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-TY3voL6sUTgEKCed .cluster-label text{fill:#333;}#mermaid-svg-TY3voL6sUTgEKCed .cluster-label span{color:#333;}#mermaid-svg-TY3voL6sUTgEKCed .label text,#mermaid-svg-TY3voL6sUTgEKCed span{fill:#333;color:#333;}#mermaid-svg-TY3voL6sUTgEKCed .node rect,#mermaid-svg-TY3voL6sUTgEKCed .node circle,#mermaid-svg-TY3voL6sUTgEKCed .node ellipse,#mermaid-svg-TY3voL6sUTgEKCed .node polygon,#mermaid-svg-TY3voL6sUTgEKCed .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-TY3voL6sUTgEKCed .node .label{text-align:center;}#mermaid-svg-TY3voL6sUTgEKCed .node.clickable{cursor:pointer;}#mermaid-svg-TY3voL6sUTgEKCed .arrowheadPath{fill:#333333;}#mermaid-svg-TY3voL6sUTgEKCed .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-TY3voL6sUTgEKCed .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-TY3voL6sUTgEKCed .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-TY3voL6sUTgEKCed .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-TY3voL6sUTgEKCed .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-TY3voL6sUTgEKCed .cluster text{fill:#333;}#mermaid-svg-TY3voL6sUTgEKCed .cluster span{color:#333;}#mermaid-svg-TY3voL6sUTgEKCed div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-TY3voL6sUTgEKCed :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 创建 恢复 存储 原发器Originator 备忘录Memento 负责人Caretaker 核心原则: 封装保护:不暴露对象内部状态细节状态分离:将状态保存逻辑与业务逻辑解耦历史管理:支持多状态快照管理二、模式结构解析 2.1 UML类图 #mermaid-svg-2GzZ8BDvyzGiJ4QX {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .error-icon{fill:#552222;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .marker{fill:#333333;stroke:#333333;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .marker.cross{stroke:#333333;}#mermaid-svg-2GzZ8BDvyzGiJ4QX svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-2GzZ8BDvyzGiJ4QX g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#mermaid-svg-2GzZ8BDvyzGiJ4QX g.classGroup text .title{font-weight:bolder;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .nodeLabel,#mermaid-svg-2GzZ8BDvyzGiJ4QX .edgeLabel{color:#131300;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .edgeLabel .label rect{fill:#ECECFF;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .label text{fill:#131300;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .edgeLabel .label span{background:#ECECFF;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .classTitle{font-weight:bolder;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .node rect,#mermaid-svg-2GzZ8BDvyzGiJ4QX .node circle,#mermaid-svg-2GzZ8BDvyzGiJ4QX .node ellipse,#mermaid-svg-2GzZ8BDvyzGiJ4QX .node polygon,#mermaid-svg-2GzZ8BDvyzGiJ4QX .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .divider{stroke:#9370DB;stroke:1;}#mermaid-svg-2GzZ8BDvyzGiJ4QX g.clickable{cursor:pointer;}#mermaid-svg-2GzZ8BDvyzGiJ4QX g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#mermaid-svg-2GzZ8BDvyzGiJ4QX g.classGroup line{stroke:#9370DB;stroke-width:1;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .classLabel .label{fill:#9370DB;font-size:10px;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .relation{stroke:#333333;stroke-width:1;fill:none;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .dashed-line{stroke-dasharray:3;}#mermaid-svg-2GzZ8BDvyzGiJ4QX #compositionStart,#mermaid-svg-2GzZ8BDvyzGiJ4QX .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-2GzZ8BDvyzGiJ4QX #compositionEnd,#mermaid-svg-2GzZ8BDvyzGiJ4QX .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-2GzZ8BDvyzGiJ4QX #dependencyStart,#mermaid-svg-2GzZ8BDvyzGiJ4QX .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-2GzZ8BDvyzGiJ4QX #dependencyStart,#mermaid-svg-2GzZ8BDvyzGiJ4QX .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-2GzZ8BDvyzGiJ4QX #extensionStart,#mermaid-svg-2GzZ8BDvyzGiJ4QX .extension{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-2GzZ8BDvyzGiJ4QX #extensionEnd,#mermaid-svg-2GzZ8BDvyzGiJ4QX .extension{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-2GzZ8BDvyzGiJ4QX #aggregationStart,#mermaid-svg-2GzZ8BDvyzGiJ4QX .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-2GzZ8BDvyzGiJ4QX #aggregationEnd,#mermaid-svg-2GzZ8BDvyzGiJ4QX .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-2GzZ8BDvyzGiJ4QX .edgeTerminals{font-size:11px;}#mermaid-svg-2GzZ8BDvyzGiJ4QX :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 创建和使用 存储 Originator -state: Object +createMemento() : Memento +restoreMemento(Memento) Memento -state: Object +getState() : Object +setState(Object) Caretaker -mementos: List +addMemento(Memento) +getMemento(int) : Memento 2.2 关键角色 角色职责示例Originator创建备忘录文本编辑器Memento存储状态编辑器快照Caretaker管理备忘录历史记录管理器三、代码实战:文本编辑器实现 3.1 场景描述 实现文本编辑器的核心功能: 文本内容编辑保存当前状态支持多次撤销/重做支持指定版本恢复3.2 核心实现 // 备忘录接口 public interface EditorMemento {// 空接口,用于类型标记 }// 文本备忘录 public class TextMemento implements EditorMemento {private final String content;private final long timestamp;public TextMemento(String content) {this.content = content;this.timestamp = System.currentTimeMillis();}public String getContent() {
http://www.w-s-a.com/news/707625/

相关文章:

  • 建筑学不会画画影响大吗电子商务沙盘seo关键词
  • 重庆网站建设找承越上海建设工程招投标网
  • 网站建设四个步骤下单的网站建设教程
  • 网站建设合同的验收表响应式网站建设哪家好
  • 手机网站建设视频长沙百家号seo
  • 网站未备案怎么访问网站开发前端需要学什么
  • 正黄集团博弘建设官方网站wordpress设置固定链接和伪静态
  • wordpress 建网站视频如何实现网站生成网页
  • 杭州品牌网站建设推广个人的网站建设目标
  • 济南有哪些网站是做家具团购的贸易公司自建免费网站
  • wap网站psd成立公司在什么网站
  • 网站建设婚恋交友聊城网站建设费用
  • 沈阳网站建设联系方式尉氏县金星网架公司
  • 医院网站建设实施方案基础微网站开发信息
  • 网站建设开发服务费记账百度指数搜索
  • 网站建设备案流程windows优化大师有必要安装吗
  • 怎么网站定制自己做网站卖视频
  • 网站开发二线城市网站制作过程中碰到的问题
  • 最好网站建设公司制作平台小程序开发教程资料
  • 陕西省高速建设集团公司网站国内做会展比较好的公司
  • 建设学校网站的原因网页设计实训报告1500
  • 网站建设客户来源江门网站设计华企立方
  • 自己如何做棋牌网站宁波网络推广优化方案
  • 深圳招聘网站推荐seo网站推广方案
  • 彩票网站开发 合法学术会议网站建设
  • 商务网站建设论文答辩pptseo技术博客
  • 怎样才能有自己的网站桂林搭建公司
  • 哪个网站做视频赚钱万科
  • 莆系医疗网站建设wp如何做网站地图
  • 网站建设应急处置方案团购网站 备案问题