您当前的位置:首页 > 养生 > 内容

猫的特性和性格,关于猫的特性和性格(备忘录模式不只是记录怕忘记的东西那么简单)

关于【猫的特性和性格】,关于猫的特性和性格,今天犇涌小编给您分享一下,如果对您有所帮助别忘了关注本站哦。

内容导航:1、「设计模式」备忘录模式不只是记录怕忘记的东西那么简单2、关于猫的特性和性格

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

什么是备忘录模式(Memento)

概念

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

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

猫的特性和性格,关于猫的特性和性格(备忘录模式不只是记录怕忘记的东西那么简单)

ctrl+z

优点

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

缺点

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

原则

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

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

适用场景

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

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

如何实现

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

发起类(Originator):依赖备忘录对象,创建备忘录对象,提供创建备忘录和恢复备忘录,发起类可以访问备忘录中的信息。备忘录类(Memento):记录发起类当前时刻的状态,并且保存在管理类中。管理类(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、关于猫的特性和性格

关于猫的特性和性格

一、好奇心强

很多猫咪的好奇心都是非常强的,任何东西都能够让他感觉非常有新鲜感,而且非常容易引起猫咪的好奇心。所以很多家养的宠物猫,在发现主人给家里新添了什么东西的时候,都会非常好奇的凑上去闻一闻,摸一摸。它们对于这些领地范围内发生的任何事情,都保持着非常强烈的好奇心,任何一次变化都逃不过猫咪的法眼。

而且猫咪对于运动装的东西,好奇心是最强的,所以有很多铲屎官会给猫咪准备一些逗猫棒,或者是其他能够动的玩具,陪猫咪一起玩,猫咪会跟主人玩的非常开心。

二、独立性强

猫咪的天性都是比较独立的,很多猫咪非常喜欢单独行动,对于猫咪来说,他们也常常非常向往自由自在的生活。虽然偶尔我们会发现猫咪会三五成群的聚在一起,但实际上这种情况不会持续很久,因为猫咪的领地意识非常强。即使是家里养的宠物猫,也会保留着自己的领地意识。

所以往往主人们在养了一只猫咪后,再养一只猫咪,就会发现家里以前养的那只猫咪,往往会对新来的小伙伴儿非常不友好。如果是家里同时养了,两只或两只以上猫咪的铲屎官,一定要注意,把猫咪的食盆和便盆分隔开,最好要每只猫都单独使用一个,而且距离的远一点,否则可能会让猫咪们经常在家里打架。

三、嫉妒心强

猫咪的嫉妒心也是非常强的,像我们上面所说,家里同时养多只猫咪的铲屎官,常常会发生猫咪跟主人争宠的事,有时候如果主人抱起其中一只猫咪,那么另外的猫咪一定会抗议,而且最好不要同时抱两只猫咪哦,可能猫咪会在你的怀抱里发生争斗,铲屎官有可能会被波及受伤。

而且猫咪不止是对同类有很强的嫉妒心,如果主人对于自己的宝宝特别亲昵,有的猫咪甚至会嫉妒小主人,真的是嫉妒心非常强了。

四、戒备心强

其实猫咪的胆子还是比较小的,所以对于刚来到新环境的猫咪,它们都不会主动的去接近主人,会对周围一直保持着戒备心,一直到它熟悉适应了新环境。

猫咪只有对待自己信任的主人,才会敞开心扉,愿意接近,所以铲屎官在刚把猫咪带回家的时候,不要急于接触猫咪,让猫咪按照自己的节奏来,慢慢的适应这个新环境,耐心的等待猫咪熟悉适应了之后,它会表现出自己的好奇心以及嫉妒心了。

五、自尊心强

猫咪的自尊心是非常强的,所以作为主人来说,不要看到猫咪的失误之后,就嘲笑自家的猫咪,猫咪是非常聪明的',它跟狗狗一样,能够感受到主人的情绪。

但是猫咪却不像狗狗那样,那么容易被人驯服,这就是因为它们的自尊心非常强,对于它不愿意做的事,主人是不可能强求它做的,一旦主人惹怒了猫咪,它很有可能还会离家出走。所以对待猫咪,像对待狗狗那样跟它们相处是不可行的,主人要尊重它们,才会让它更愿意亲近你。

关于猫的特性和性格

一、好奇心强

很多猫咪的好奇心都是非常强的,任何东西都能够让他感觉非常有新鲜感,而且非常容易引起猫咪的好奇心。所以很多家养的宠物猫,在发现主人给家里新添了什么东西的时候,都会非常好奇的凑上去闻一闻,摸一摸。它们对于这些领地范围内发生的任何事情,都保持着非常强烈的好奇心,任何一次变化都逃不过猫咪的法眼。

而且猫咪对于运动装的东西,好奇心是最强的,所以有很多铲屎官会给猫咪准备一些逗猫棒,或者是其他能够动的玩具,陪猫咪一起玩,猫咪会跟主人玩的非常开心。

二、独立性强

猫咪的天性都是比较独立的,很多猫咪非常喜欢单独行动,对于猫咪来说,他们也常常非常向往自由自在的生活。虽然偶尔我们会发现猫咪会三五成群的聚在一起,但实际上这种情况不会持续很久,因为猫咪的领地意识非常强。即使是家里养的宠物猫,也会保留着自己的领地意识。

所以往往主人们在养了一只猫咪后,再养一只猫咪,就会发现家里以前养的那只猫咪,往往会对新来的小伙伴儿非常不友好。如果是家里同时养了,两只或两只以上猫咪的铲屎官,一定要注意,把猫咪的食盆和便盆分隔开,最好要每只猫都单独使用一个,而且距离的远一点,否则可能会让猫咪们经常在家里打架。

三、嫉妒心强

猫咪的嫉妒心也是非常强的,像我们上面所说,家里同时养多只猫咪的铲屎官,常常会发生猫咪跟主人争宠的事,有时候如果主人抱起其中一只猫咪,那么另外的猫咪一定会抗议,而且最好不要同时抱两只猫咪哦,可能猫咪会在你的怀抱里发生争斗,铲屎官有可能会被波及受伤。

而且猫咪不止是对同类有很强的嫉妒心,如果主人对于自己的宝宝特别亲昵,有的猫咪甚至会嫉妒小主人,真的是嫉妒心非常强了。

四、戒备心强

其实猫咪的胆子还是比较小的,所以对于刚来到新环境的猫咪,它们都不会主动的去接近主人,会对周围一直保持着戒备心,一直到它熟悉适应了新环境。

猫咪只有对待自己信任的主人,才会敞开心扉,愿意接近,所以铲屎官在刚把猫咪带回家的时候,不要急于接触猫咪,让猫咪按照自己的节奏来,慢慢的适应这个新环境,耐心的等待猫咪熟悉适应了之后,它会表现出自己的好奇心以及嫉妒心了。

五、自尊心强

猫咪的自尊心是非常强的,所以作为主人来说,不要看到猫咪的失误之后,就嘲笑自家的猫咪,猫咪是非常聪明的',它跟狗狗一样,能够感受到主人的情绪。

但是猫咪却不像狗狗那样,那么容易被人驯服,这就是因为它们的自尊心非常强,对于它不愿意做的事,主人是不可能强求它做的,一旦主人惹怒了猫咪,它很有可能还会离家出走。所以对待猫咪,像对待狗狗那样跟它们相处是不可行的,主人要尊重它们,才会让它更愿意亲近你。

关于猫的特性和性格

一、 猫咪内敛、优雅、自负、忠于自己的感觉。千万别拿它跟其它动物来比较,它是非常独特的,而且每只猫都很特别。它有很强的独立意识,却又对主人十分的深情。它不轻易生气,除非实在是烦透了,或是把它弄痛了。它可以成为你的朋友,却未必是会属于你的。它的社交圈并不大,阶级意识也不强,不像 狗那么服从权力和领袖。

二、猫是独立性强的动物,随意显得任性猫从来不认为自己是主人的家臣。有人认为与狗相比,猫显得有些任性,我行我素。大凡有这种想法的人都不大了解猫的习性。本来猫是喜欢单独行动的动物,不像狗一样,听从主人的命令,集体行动。因此它不将主人视为君主,为命是从。

有时候,你怎么叫它,它都充耳不闻。猫和主人并不是主从关系,把他们看成是平等的朋友关系更好一些。也正是这种关系,才显得独具魅力。

三、猫喜欢孤独而自由自在地活动,除 发情交外,很少三五成群地一起栖息。有浪迹天涯的特性, 家猫在很大程度上仍然保持着这种孤独的性格。猫不象其他家畜那样,一旦离开人就很难再适应原有的野外生存环境,而需要过分地依赖人生存。猫一旦跑到野外,很容易与 野猫发生交,并再次成为野猫,很快地适应外界的生存环境而野化。

四、它很酷,却不残酷。它捉老鼠、抓小鸟、抓蟑螂、追球、追任何会动的东西,因为它原本就是狩猎者,动机单纯得就像夏天小孩看见冰淇淋就 流口水,女人路过珠宝店看见钻戒,眼睛立刻发亮一样。虽然猫咪看起来很“酷”实际上却很爱撒娇。

猫有时把主人看做父母,象小孩一样爱撒娇,它觉得寂寞的时候会爬上主人的膝盖,或者“嗵”的跳到摊开的报纸上坐着,尽显娇态。很多人都拿它没有办法。

本文关键词:关于猫的特性和性格描写,猫的性格特征和特点,关于猫的特性和性格的作文,猫的性格特质,猫的性格?。这就是关于《猫的特性和性格,关于猫的特性和性格(备忘录模式不只是记录怕忘记的东西那么简单)》的所有内容,希望对您能有所帮助!


声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,谢谢。

上一篇: 抖音搜索用户会被发现吗,为什么抖音搜索出来的是用户(什么是抖音短视频搜索排名规则)

下一篇: 何氏之庐也是什么意思,何氏之庐也之的意思(那些你不知道的网络梗)



推荐阅读

网站内容来自网络,如有侵权请联系我们,立即删除! | 软文发布 | 粤ICP备2021106084号