当前位置: > 投稿>正文

成功男人的标准,备忘录模式不只是记录怕忘记的东西那么简单

01-13 互联网 未知 投稿

关于【成功男人的标准】,今天涌涌小编给您分享一下,如果对您有所帮助别忘了关注本站哦。

1、「设计模式」备忘录模式不只是记录怕忘记的东西那么简单

什么是备忘录模式(Memento)

概念

备忘录(Memento)模式属于「行为型模式」,又叫作快照模式,定义:在不破坏封装性的前提下,捕获一个对象内部的状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。简单来说,就是「保存一个对象之前的状态,然后在某个时间回退到这个状态」

我们使用的很多软件都提供了这个功能,我们使用的编辑工具,word、记事本、idea、typora等等,ctrl+z就可以回退自己的操作,「可以防止我们的误操作」。还有浏览器的倒退,可以让我们回到上一个页面。游戏中的存档,我们可以自己提前存入一个档,以后可以再次退回来。

成功男人的标准,备忘录模式不只是记录怕忘记的东西那么简单

ctrl+z

优点

  1. 给用户提供了一种可以恢复状态的机制,用户可以回退自己的操作。
  2. 封装了内部状态。想要使用备忘录模式,需要把内部的数据都封装成一个状态。
  3. 符合单一职责原则。由发起类无需管理状态,由管理类来管理状态。

缺点

  1. 需要大量的资源。要保存状态对象是需要消耗内存资源,可以考虑设置一个状态对象的上限。

原则

“+”代表遵守,“-”代表不遵守或者不相关

原则开放封闭单一职责迪米特里氏替换依赖倒置接口隔离合成复用-++----

适用场景

  1. 需要保存和恢复数据的情况。
  2. 需要撤销操作的情况。

这两种常见的代码实现会有一点点的不同,后面的例子中我会标注一下的。

如何实现

想要实现备忘录模式,需要以下三样东西:

  1. 发起类(Originator):依赖备忘录对象,创建备忘录对象,提供创建备忘录和恢复备忘录,发起类可以访问备忘录中的信息。
  2. 备忘录类(Memento):记录发起类当前时刻的状态,并且保存在管理类中。
  3. 管理类(Caretaker):管理备忘录对象,提供存储,回退备忘录等操作,管理类不能访问备忘录对象内的信息。

类图

成功男人的标准,备忘录模式不只是记录怕忘记的东西那么简单

备忘录模式的结构图

成功男人的标准,备忘录模式不只是记录怕忘记的东西那么简单

上班小丑

开始敲代码!

举例

这里以记事本的回退操作为例,我们输入文字,每个版本的文字都保存起来,我们可以一个一个版本地回退。

「类图」

成功男人的标准,备忘录模式不只是记录怕忘记的东西那么简单

image-20210612225959096

「代码」

发起类

/** * 发起类 * 文本编辑器 * Created on 2021/6/12. * * @author xuxiaobai */public class TextEditor { //当前状态记录 private TextMemento currentRecord; //状态记录管理者 private TextCaretaker caretaker = new TextCaretaker(); /** * 提交文本记录 * * @param text */ public void commit(String text) { System.out.println("-----commit-----"); //更新当前记录 currentRecord = new TextMemento(text); //保存记录 caretaker.push(currentRecord); show(); } /** * 回退 */ public void ctrlZ() { System.out.println("-----ctrl+z-----"); TextMemento textMemento = caretaker.get(); if (textMemento == null) { //当备忘录为空,打印提示后返回 System.out.println("没有历史记录,无法回退"); return; } System.out.println("恢复记录"); this.currentRecord=textMemento; show(); } /** * 展示当前记录 */ public void show() { //获取备忘录中的text String text = currentRecord.getText(); System.out.println("当前记录为:“"+ (text ==null?"无": text)+"”"); }}

管理类

/** * * 文本备忘录管理类 * Created on 2021/6/12. * * @author xuxiaobai */public class TextCaretaker { /** * 备忘录存储栈 * 这是需要撤销操作的情况,才需要的 * 如果是需要保存和恢复数据的情况,可以考虑使用List来存储备忘录 */ Stack<TextMemento> stack=new Stack<>(); public void push(TextMemento memento){ stack.push(memento); } public TextMemento get(){ return stack.pop(); }}

备忘录类

/** * 文本备忘录 * Created on 2021/6/12. * * @author xuxiaobai */public class TextMemento { /** * 文本的属性 * 这里以String为例 * 如果你想更加复杂一点,可以增加多一点的属性 */ private String text; public TextMemento(String text){ this.text =text; } public String getText() { return text; } public TextMemento setText(String text) { this.text = text; return this; }}

测试类

public class MementoTest { public static void main(String[] args) { //文本编辑器 TextEditor editor=new TextEditor(); StringBuilder text=new StringBuilder("第一个版本的文字"); editor.commit(text.toString()); editor.commit(text.append(",再加第二版本").toString()); editor.commit(text.append(",再加第三版本").toString()); editor.show(); editor.ctrlZ(); editor.ctrlZ(); editor.ctrlZ(); /** * 结果: * -----commit----- * 当前记录为:“第一个版本的文字” * -----commit----- * 当前记录为:“第一个版本的文字,再加第二版本” * -----commit----- * 当前记录为:“第一个版本的文字,再加第二版本,再加第三版本” * 当前记录为:“第一个版本的文字,再加第二版本,再加第三版本” * -----ctrl+z----- * 恢复记录 * 当前记录为:“第一个版本的文字,再加第二版本,再加第三版本” * -----ctrl+z----- * 恢复记录 * 当前记录为:“第一个版本的文字,再加第二版本” * -----ctrl+z----- * 恢复记录 * 当前记录为:“第一个版本的文字” */ }}

这里的例子我都是直接创建对象的,偶尔偷个懒嘛,我这里建议在实际开发中运用的话,还是要去创建一个顶层的接口,然后声明的时候依赖于接口,这样才符合依赖倒转原则嘛。

成功男人的标准,备忘录模式不只是记录怕忘记的东西那么简单

小黄鸡扯紫色内裤动图

总结

备忘录模式和其他模式相比有很大的不同,它是为了能让我们「回退我们的操作」,保存了过往的状态,我们在合适的时间恢复。在使用备忘录模式时需要注意,只有发起类这个角色才能去组合备忘录和管理者,不要把这两个角色暴露给这个模式外的对象,也只有发起类才能去读取备忘录中的数据,管理者只负责管理备忘录,还有呢,使用备忘录模式是需要「消耗内存」的,也可以考虑把这些备忘录写入到数据库中,不过使用的时候还是得写入内存中。

2、成功男人的标准

成功男人的标准

第一、家庭必须得和睦。只有家庭和和睦睦、男人才能专心于事业、若是三天两头的家里鸡飞蛋打。作为男人、作为家庭里面的顶梁柱、哪有心情去干事业、每天焦头烂额的想着怎么去处理家庭里面的矛盾。事业上、别人循序渐进的再往前走、而自己却只能原地踏步或者倒退、最后只能看着机会从手中溜走。这个时候最主要的是看家庭里面的婆媳关系了。只要媳妇温柔贤惠、婆婆落落大方;只要媳妇尊重长辈、遇事礼让长辈、婆婆宅心仁厚、那么婆媳相处一定会很融洽、婆媳关系融洽、家庭才和睦、幸福、男人才能专心事业。

第二、性格必须得温和。要想做一个成功的领导者、性格必须的温和、因为不管是自己的团队还是在外跟别人商谈要事、没有一个温和的态度、那么不管是团队还是商谈、必不会成功。团队就是一个小家庭、领导者的温和态度、会让每一个家庭成员感受到家的温暖、家的和谐。同时也只有成员凝聚在一起才能爆发出大能量、商谈上温和的态度、会给人一种平易近人的感觉。

第三、工作上必须勤劳涌进。成功者肯定是勤勤恳恳、兢兢业业的工作。每一个成功者背后、都有着一段充满辛酸与泪水的历程、坚持下来了、才有资格跻身前列。成功从不是天马行空、而是一步一个脚印、脚踏实地的走出来的。付出与收获永远都是成正比的。

第四、心灵上必须心存感恩。成功的路上是坎坷的、荆棘的、每一次成功的背后、都有着大多数人的支持和帮助、失去了他们、也就是失去了成功的机会。中国是一个传统美德最完整的.国家、德、仁、礼、智、忠、孝为六德、你的成功应该感恩那些默默为你付出的人、也只有这样、才能一次次的化解危机、失去了它、你将是一个人战斗。

第五、交流上必须得谈吐清晰。成功得道路从来都不是闭门造车、而是在于交流。任何一位成功者肯定会有着一副让你信服得口才、围绕着一个问题、可以从多方面进行阐述、让您心服口服。成功的第一步在于交流、与社会各行各业的人进行交流商谈中吸取经验、并塑造自己的人脉、交流中谈吐清晰、会给人一种舒心的聊天经历、会给人留下一个好的印象。

成功的人一般都是戒急、戒躁、举止端正、性格温和、平易近人、谈吐优雅、成熟稳重、并有着一颗感恩的心。

成功男人的标准

三炼练就成功男人

1、加强人性锤炼是成功男人成长成熟的保证。

“人性”是什么?在我看来,“人性”就是人的自然属性、社会属性与思维属性的总和,是一个人区别于他人的 “特质”。人性有善恶,重要的是树立怎么样的人生观、世界观、价值观。人性要“讲”更要“养”,人性靠“锤”更靠“炼”。只有正确的人生理想辅以经常的人性锤炼,才能打造好优秀的自己。

2、加强品行修炼是成功男人成长成熟的基础。

“品行修炼”就是古人所说的“修身养德”。“修身”重在“正心”,正如韩愈所说“欲修其身者,先正其心;欲正其心者,先诚其意”。“养德”首重“克俭”,正所谓“非俭无以养廉,廉以养德”。良好的品行来源于高尚的思想品德、职业道德、社会公德和家庭伦理道德,这是为人、处世、做事的基础。

3、加强能力锻炼是成功男人成长成熟的关键。

年轻男人由于缺乏实际工作的磨练,往往不能很好地把知识和素质优势转化为能力优势。能力锻炼“炼” 什么?一炼经历经验。如果说经历是一笔宝贵的财富,那么,经验就是经过加工提纯的财富。二炼意志毅力。艰苦可以磨练意志、困难可以提高勇气、挫折可以积累胆识。三炼能力素质。我们每个人都要通过组织培养、个人努力、环境催化,不断学习,更新知识,提高本领,尽快把自身的“潜质”变成“显能”,把“实力”化为“实绩”。

本文关键词:成功男人的标准。这就是关于《成功男人的标准,备忘录模式不只是记录怕忘记的东西那么简单》的所有内容,希望对您能有所帮助!更多的知识请继续关注《犇涌向乾》百科知识网站:http://www.029ztxx.com!

版权声明: 本站仅提供信息存储空间服务,旨在传递更多信息,不拥有所有权,不承担相关法律责任,不代表本网赞同其观点和对其真实性负责。如因作品内容、版权和其它问题需要同本网联系的,请发送邮件至 举报,一经查实,本站将立刻删除。

猜你喜欢