首页 > 其他分享 >12.21日记

12.21日记

时间:2023-12-20 22:15:28浏览次数:41  
标签:封装 定义 对象 12.21 模式 算法 实例 日记


行为型(类和对象进行交互和怎么分配职责)
职责链模式:避免请求的发送者和接受者耦合在一起,让多个对象都有可能接受请求,
将对象连接成一条链,沿着这条链传递请求
实例 :假条审批

命令模式:将请求封装为一个对象,对客户参数化,对请求排队,记录,支持可撤销操作
实例:电视遥控器

解释器(类):定义一个语言的文法,建立解释器来解释该语言中的句子
实例:数学运算解释器,抽象语法树

迭代器:提供一种访问聚合对象的方法,不用暴露内部表示
实例:电视遥控器(频道)

中介者:用一个中介者对象封装一系列对象的交互,中介者使对象之间不会显示的引用,松耦合
可以独立的改变它们之间的交互(迪米特法则典型)
实例:虚拟聊天室

备忘录:不破坏封装的情况下,捕获一个对象的内部状态,在该对象之外保存这个状态,以后
将对象恢复到原先保存的状态
实例:用户撤销信息

观察者模式:定义一对多依赖关系,使得每当对象状态变化时,其相关依赖对象皆得到通知
实例:猫狗老鼠


状态模式:允许一个对象在其内部状态改变时改变它的行为
实例:论坛用户等级

策略模式:定义一系列算法,将每个算法封装起来,并让它们可以相互替换
实例:排序策略

模板方法模式(类行为):定义一个操作中算法的框架,将一些步骤延迟到子类中,不改变
算法的结构即可重定义该算法的某些特定步骤
实例:银行业务办理

访问者模式:不改变各元素的类的前提下定义作用于这些元素的新操作
实例:购物车

标签:封装,定义,对象,12.21,模式,算法,实例,日记
From: https://www.cnblogs.com/zhangmingmkzj/p/17917689.html

相关文章

  • 12.20日记
    适配者模式:将接口转化为客户希望的接口,使不兼容的类可以一起工作;(类模式,对象模式);接口(方法或方法的集合)实例:仿生机器人,加密适配器(第三方接口)优点:将目标类与接口类解耦;类的透明性和复用性;扩展性增强,开闭原则;缺点:类适配者(只能适配一个类,不能多;不能为最终类;抽象只能为接口),对象适配者......
  • 大二快乐日记11.10
    MySQL提供了三种创建索引的方法:1)使用CREATEINDEX语句可以使用专门用于创建索引的CREATEINDEX语句在一个已有的表上创建索引,但该语句不能创建主键。语法格式:CREATE<索引名>ON<表名>(<列名>[<长度>][ASC|DESC])语法说明如下:<索引名>:指定索引名。一个表可以创建......
  • 大二快乐日记11.8
    索引就是根据表中的一列或若干列按照一定顺序建立的列值与记录行之间的对应关系表,实质上是一张描述索引列的列值与原表中记录行之间一一对应关系的有序表。索引是MySQL中十分重要的数据库对象,是数据库性能调优技术的基础,常用于实现数据的快速检索。在MySQL中,通常有以下两种......
  • 大二快乐日记11.14
    基本语法当不再需要索引时,可以使用DROPINDEX语句或ALTERTABLE语句来对索引进行删除。1)使用DROPINDEX语句语法格式:DROPINDEX<索引名>ON<表名>语法说明如下:<索引名>:要删除的索引名。<表名>:指定该索引所在的表名。2)使用ALTERTABLE语句根据ALTERTABLE语句的语......
  • 【工作日记(实习)02】实习第46天
      其实第46天是上周五。  将要下雪,还未下雪。  头天通知10:30到酒店给大领导的报告捧场。  我八点醒(平时上班的话7:00就得醒了),然后计算了一下时间,赶去酒店。  没有直达的地铁,决定坐公交。  不先去单位了,决定直接从学校去酒店。  大约到了快9:40,我都快到了,发消......
  • 2023年12月日记
    12.15今天还是下雪,好看捏,早上不用跑操,多睡了十分钟,万豪附中薄纱本部。第一节就是oi,上完李帅早读过来了。huge终于把luogu给我们几个开开了。不知道干啥,决定学DP优化,看了几篇博客就写了。写了个CF327C,很典的一道单调队列优化,写完调的时候jd一直在打扰我要口香糖。jd:我都一年......
  • 12.15日记
    log4j.rootLogger=info,consolePrint,errorFile,logFile log4j.appender.consolePrint.Encoding=UTF-8log4j.appender.consolePrint=org.apache.log4j.ConsoleAppenderlog4j.appender.consolePrint.Target=System.outlog4j.appender.consolePrint.layout=org.apache.l......
  • 12月12日记录mybatis plus的初始学习
    今天开始mybatisplus的初始学习,首先是学习mybatisplus的引入方式需要引入下面三段代码<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.3.1</version></dependency>......
  • 12.14日记
    FlinkJobManager架构原理的核心是JobMaster和ResourceManager,其中JobMaster负责任务的调度和监控,ResourceManager负责集群资源的管理。JobMaster和ResourceManager之间通过RPC通信进行交互。JobMaster主要负责以下几个方面:   任务管理JobMaster负责接收用户提交的任务,并将任......
  • 服务器日记
    查看玩法:自己拥有一台服务器可以做哪些很酷的事情?-知乎(zhihu.com)  自己拥有一台服务器可以做哪些很酷的事情?-知乎(zhihu.com)搜索监控服务器:netdata监控服务器_百度搜索(baidu.com)查看教程:65.7kStar!强大又全面的性能监控工具——Netdata-知乎(zhihu.com)查看......