- 博客(7)
- 收藏
- 关注
原创 设计模式笔记6-建造者模式
6.建造者模式基本介绍 1) 建造者模式(Builder Pattern) 又叫生成器模式,是一种对象构建模式。它可以将复杂对象的建造过程抽象出来(抽象类别),使这个抽象过程的不同实现方法可以构造出不同表现(属性)的对象。 2) 建造者模式 是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。建造者模式的四个角色 1) Product(产品角色): 一个具体的产品对象...
2021-10-08 16:48:10
181
原创 原型模式中的深浅拷贝问题
浅拷贝的介绍 1) 对于数据类型是基本数据类型的成员变量,浅拷贝会直接进行值传递,也就是将该属性值复制一份给新的对象。 2) 对于数据类型是引用数据类型的成员变量,比如说成员变量是某个数组、某个类的对象等,那么浅拷贝会进行引用传递,也就是只是将该成员变量的引用值(内存地址)复制一份给新的对象。因为实际上两个对象的该成员变量都指向同一个实例。在这种情况下,在一个对象中修改该成员变量会影响到另一个对象的该成员变量值 3) 前面我们克隆羊就是浅拷贝 ...
2021-10-07 21:44:37
178
原创 设计模式笔记5-原型模式
5.原型模式原型模式(Prototype模式)是指:用原型实例指定创建对象的种类,并且通过拷贝这些原型,创建新的对象 原型模式是一种创建型设计模式,允许一个对象再创建另外一个可定制的对,无需知道如何创建的细节 工作原理:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建,即 对象.clone() 形象理解:孙悟空拔出猴毛, 变出其它猴子来看一个克隆羊的例子...
2021-10-07 12:51:50
151
原创 设计模式笔记4-抽象工厂模式
4.抽象工厂模式抽象工厂模式:定义了一个interface用于创建相关或有依赖关系的对象簇,而无需指明具体的类抽象工厂模式可以将简单工厂模式和工厂方法模式进行整合。 从设计层面看,抽象工厂模式就是对简单工厂模式的改进(或者称为进一步的抽象)。 将工厂抽象成两层,AbsFactory(抽象工厂) 和 具体实现的工厂子类。程序员可以根据创建对象类型使用对应的工厂子类。这样将单个的简单工厂类变成了工厂簇, 更利于代码的维护和扩展。 ...
2021-10-07 11:07:52
140
原创 设计模式笔记3-工厂方法模式
3.工厂方法模式简单工厂模式的主要考虑的是对产品种类的扩展,能让产品种类的扩展变得容易。现在如果生产产品的工厂划分了地域(如BJFactory,TJFactory),那么原有的方法实现此目标还合适吗?不合适的话,该如何改进?(不考虑Order的增长)3.1简单工厂模式思路在原来的SimpleFactory类的位置直接分成BJFactory与TJFactory两个类UML类图可以看到,在增加新的工厂后,每次都需要在Order中聚合新的工厂。而每次增...
2021-10-06 20:50:54
98
原创 设计模式笔记2-简单工厂模式(带有自制UML类图)
2.简单工厂模式来看一个订购面包的实例1)面包的种类很多,(ButterBread, Toast...)2)制作过程,(prepare, bake, pack)3)完成面包的订购功能2.1 原来的方法 思路:需要用到的类,Bread抽象类,ButterBread,Toast具体的实现类,OrderBread面包的订购类 具体实现,在OrderBread中完成对不同种类面包的订购 UML类图...
2021-10-06 14:48:46
2364
4
原创 设计模式笔记1-单例模式
1、单例模式1.1 简介所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类 只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。 1.2 创建代理模式的八种方法方法一:恶汉式1-静态变量(No Lazy)public class Singleton1 { //1.构造器私有化 private Singleton1() {} //2.创...
2021-10-05 19:30:20
284
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人