06 2020 档案
摘要:模式动机 对于系统中某些对象,它们存储在同一个集合中,且具有不同的类型。对于该集合中的对象,可以接受一类称为访问者的对象来访问,不同的访问者其访问方式有所不同 Java 提供了用于存储多个元素的集合对象,集合中存储的对象有时候是同一类型,有时候不是同一类型,或许它们只是具有共同的父类。假如我们要针对
阅读全文
摘要:概述 现实生活中很多事情的完成过程都包含几个基本步骤,例如请客吃饭,无论吃什么,一般都包含点单、吃东西、买单几个步骤,到底吃什么则具体情况具体分析 既然这几个步骤的次序是固定的,于是我们创建一个新的方法叫“请客”,在其中调用了点单、吃东西和买单,同时指定它们的执行次序,我们称这个“请客”为模板方法,
阅读全文
摘要:概述 要完成一项任务,可以有多种不同的方式,外出旅游时可以选择多种不同的出行方式,如自行车、坐汽车、坐高铁或乘飞机等,每一种方式称为一个策略,我们可以根据环境或者条件的不同选择不同的策略来完成任务 在软件开发中,一项功能也有很多算法可以实现,如果我们直接把多种算法集中在一个类,或者说使用条件判断语句
阅读全文
摘要:概述 很多情况下,一个对象的行为取决于一个或多个动态变化的属性,这样的属性叫做状态。一个对象可以拥有多个状态,这些状态可以相互转换,当对象状态不同时,其行为也有所差异 假设一个人就是对象,人根据心情不同会有很多状态,比如开心和伤心,这两种状态可以相互转换。开心的人可能会因为突然的噩耗而伤心,过了一段
阅读全文
摘要:概述 在系统中,对象并不是孤立存在的,一个对象的改变可能会导致其他与之存在依赖关系的对象发生改变。观察者模式用于描述对象之间的依赖关系,一个对象发生改变会自动通知其他对象,其他对象将相应做出反应。发生改变的对象称为观察目标,被通知的对象称为观察者,一个观察目标可以对应多个观察者,而且观察者之间没有相
阅读全文