![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
GOF
自己玩儿呢
这个作者很懒,什么都没留下…
展开
-
GOF(五)-原型模式【推荐】
原型模式(Prototype Pattern)原型模式主要用于创建重复的对象,同时又能保证性能,所以是创建型在使用原型模式时,我们需要首先创建一个原型对象,再通过复制这个原型对象,来创建更多的同类型的对象。使用原型复制对象,性能很高,所以常用于创建大对象,或者初始化繁琐的对象:比如游戏里面的地图等等。适用场景:一是类初始化需要消化非常多的资源,这个资源包括数据、硬件资源等;...原创 2019-08-23 22:21:06 · 131 阅读 · 0 评论 -
GOF(一)-单例模式(通过嵌套内部类的方式)【推荐】
单例模式单例:即单个实例,实例需要new,所以是 创建型1、单例类只能有一个实例。2、单例类必须自己创建自己的唯一实例。3、单例类必须给所有其他对象提供这一实例。懒汉式和饿汉式主要是加载时间存在差别,即是否是在构造函数中new,这其实是类加载的相关知识,这里不再赘述。通过 内部嵌套类 的方式编写单例模式代码如下:public class Singleton { ...原创 2019-08-20 22:50:29 · 373 阅读 · 0 评论 -
GOF-UML导学【推荐】
UML导学这里记录一下我自己对于UML中各种箭头的记忆方式声明:这里的部分图片是我从《大话设计模式》中截取的,因此图中的部分例子是c++实现的,与我使用的java有所出入,不过不影响阅读。这里也推荐大家看一下这本书,内容丰富而且有趣。继承(extends)空心三角 + 直线指的是一个类(称为子类)继承另外一个类(称为父类)的功能,并且可以增加自己的新功能的能力,通过extends关键...原创 2019-08-21 20:40:44 · 165 阅读 · 0 评论 -
GOF(二)-建造者模式(通过嵌套内部类的方式)【推荐】
建造者模式(Builder Pattern)建造者:需要创建和提供实例,所以是创建型用户只能看到稳定的接口,后面频繁变动的内容看不到。所以优点就是:容易扩展,方便控制风险由于建造者模式一般通过extends继承或implement实现接口完成。所以缺点就是:需要有很多共同点,因此范围有限;易扩展容易出现很多的建造类注意: 建造者模式比工厂模式更加关注组装顺序理论不多赘述,网上很多,...原创 2019-08-21 21:13:20 · 215 阅读 · 0 评论 -
GOF(三)-简单工厂及工厂模式【推荐】
工厂模式(Factory Pattern)工厂模式:顾名思义,工厂模式提供了一种创建对象的最佳方式,所以是创建型优点:一个调用者想创建一个对象,只要知道其名称就可以了。扩展性高,如果想增加一个产品,只要扩展一个工厂类就可以。屏蔽产品的具体实现,调用者只关心产品的接口。缺点:每次增加一个产品时,不但要增加一个具体的产品类和还要写一个它的实现工厂(加一个产品,我就要写两个类...原创 2019-08-22 22:01:02 · 130 阅读 · 0 评论 -
GOF(四)-抽象工厂模式【推荐】
抽象工厂模式(Abstract Factory Pattern)抽象工厂模式:顾名思义,提供了一种创建对象的最佳方式,所以是创建型抽象工厂的方法较多,容易混淆,如果此时脑袋不够清醒,请先起来走走,然后再看此文,效果更佳!!!!阅读此文,推荐跟随代码一同编写属于自己的抽象工厂模式代码。有人见到抽象二字就犯怵,其实抽象就是提取公共的部分,抽象工厂模式同样也是提取工厂模式的公共部分,规定工厂...原创 2019-08-22 23:00:42 · 191 阅读 · 0 评论 -
GOF(七)-桥接模式【推荐】
桥接模式( Bridge Pattern)桥接,顾名思义是为了连接两个对象,所以是结构型桥接模式是为了将抽象化与实现化解耦,让二者可以独立地变化【注意:是独立变化】。它通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦。桥接模式能够方便的对每一部分扩展,以及单独的维护。抽象化的一方与实现化的一方之间建立一个桥梁,这样两者的依赖关系就可以通过这个桥梁来建立了。UML的相关知识,可以...原创 2019-08-26 19:54:49 · 190 阅读 · 0 评论 -
GOF(八)-组合模式【推荐】
组合模式(Composite Pattern)组合模式(又叫部分整体模式):根据树形结构来组合对象,用来表示部分及整体的层次,所以是结构型组合模式让单个对象和组合对象的使用具有一致性,用户不需要关心自己处理的是单个对象还是整个组合结构,而且不用因为加入新的对象而修改代码。UML的相关知识,可以访问我的另外一篇博文组合模式有两种实现方式:透明式的组合模式、安全式的组合模式,至于二者的区...原创 2019-08-27 19:59:26 · 345 阅读 · 0 评论