摘要:
抽象工厂模式。 我们需要一个抽象工厂,不同的具体工厂继承抽象工厂。具体的工厂不再生产单一的产品,而是生产一系列的产品,可以具体工厂生产的一系列的产品每一个类进行抽象,对这一系列产品设置好该具体工厂应该产生的类型。 举例: 水果抽象工厂,有两个具体工厂继承 南方水果工厂,北方水果工厂。 两个具体的工厂 阅读全文
posted @ 2023-10-23 23:45
NobodyHero
阅读(14)
评论(0)
推荐(0)
摘要:
一对多的依赖关系。 对象的状态发生改变(一),依赖对象得到通知并进行更新操作。 观察者: 这里的Observer定义了观察者的通用的方法update,在这里重写了update方法。 被观察对象的类: 被观察对象类继承被观察对象接口Observable,这个接口 维护一个观察者列表,一个changed 阅读全文
posted @ 2023-10-23 23:21
NobodyHero
阅读(15)
评论(0)
推荐(0)
摘要:
首先需要一个建造者抽象类,抽象方法代表建造的过程。 需要一个指挥者类,来指挥建造的流程,这个流程是固定的。 建造的对象 想要建造的效果,是具体的建造过程,返回一个实例对象代表完成最终的建造。 最终的调用代码: 建造者模式,通过建造者指定的接口,具体的建造类型实现接口写出具体的实现类,留一个获取建造对 阅读全文
posted @ 2023-10-23 22:51
NobodyHero
阅读(10)
评论(0)
推荐(0)
摘要:
首先要有一个抽象的模板方法,给出大致的框架。 抽象模板方法有接口 模板方法接口的所有方法都用抽象方法来写,这样可以延迟到子类中去加载。 阅读全文
posted @ 2023-10-23 22:32
NobodyHero
阅读(13)
评论(0)
推荐(0)
摘要:
原型模式的深浅克隆 首先有person这个概念 什么是深克隆和浅克隆? 浅克隆:创建一个新对象,新对象的属性和原来对象完全相同,对于非基本类型属性,仍指向原有属性所指向的对象的内存地址。 浅克隆只复制指向某个对象的引用,而不复制对象本身,新旧对象还是共享同一块内存,修改对象会改到原对象 深克隆:创建 阅读全文
posted @ 2023-10-23 08:16
NobodyHero
阅读(8)
评论(0)
推荐(0)
摘要:
简单工厂的最大优点是在工厂类中完成了必要的逻辑判断,根据客户端的条件动态实例化相关的类即可。 但是缺点也在这里,如果我要添加一个case选择,就需要修改原有的类,等于说对扩展开发了的同时也对修改开放了,违反了开放封闭原则。 工厂方法模式,通过抽象工厂的选择,定义一个用于创建对象的接口,让子类决定实例 阅读全文
posted @ 2023-10-23 07:50
NobodyHero
阅读(12)
评论(0)
推荐(0)