
设计模式
大飞练习了两年半
2年java转c++开发,现专注于音视频领域开发
展开
-
外观模式
外观模式又称为门面模式,它是一种给对象结构型面膜是,外观模式是迪米特法则的一种具体实现,通过引入一个新的外观角色可以降低原有系统的复杂度,同时降低客户类与子系统的耦合度 外观模式的结构 1.**Facade(外观角色):**这个类是需要被客户端使用的类,在外观角色中可以知道相关的子系统的功能和责任,在正常情况下,它将所有从客户端发来的请求都委派到相应的子系统中,传递给相应的子系统对象处理 2.**SubSystem(子系统角色):**每一个子系统都可以直接被客户端所调用也可以被外观类调用,他处理由外观角色发原创 2020-09-26 00:17:01 · 314 阅读 · 0 评论 -
装饰者模式
装饰模式是一种对象结构型模式,它可以在不改变一个类本来的工作职责的情况下,动态的添加新的功能 装饰者模式的结构 1.**Component(抽象构件):**它是具体类和抽象类的装饰类的共同的父类 2.**ConcreteComponent(具体构件):**它是抽象构件的具体实现子类,是我们会真正使用到功能的类,可以被装饰类动态添加职责 3.**Decorator(抽象类):**他也是抽象构件的子类,而且内聚了一个抽象构件对象,这个对象可以调用装饰之前构件中对象的方法,并通过其子类扩展该方法,以达到装饰的目的原创 2020-09-24 23:17:09 · 210 阅读 · 0 评论 -
组合模式
组合多个对象形成树形结构以表示具有部分-整体关系的层次结构。组合模式让客户端可以统一对待单个对象和组合对象 组合模式的结构 1.**Component(抽象构建):**它可以是接口或抽象类,为叶子构件和容器构件对象声明接口,在该角色中可以包含所有子类共有行为的声明和实现 2.**Leaf(叶子节点):**他在组合结构中表示叶子节点对象,叶子节点没有子节点,它实现了在抽象构建中定义的行为 3.**Composite(容器构件):**他在组合结构中表示容器节点对象,容器节点包含子节点,每一个节点也可以是容器.原创 2020-09-23 22:39:47 · 148 阅读 · 0 评论 -
桥接模式
桥接模式是一种对象结构型模式,使用了一种比较巧妙的方法去处理多层继承存在的问题,用抽象关系取代了传统的多层继承,将类之间的静态继承关系转换为动态的对象组合关系,使得系统更加灵活,并易于扩展,同时有效地控制了系统中类的个数。 桥接模式结构 1.**Abstraction(抽象类):**它是用于定义抽象类的接口,一般情况下是抽象类比较多 2.**RefinedAbstraction(扩充抽象类):**他是实现了Abstraction的抽象类 3.**Implementor(实现类接口):**它是定义了实现类的接原创 2020-09-22 23:35:52 · 352 阅读 · 0 评论 -
适配器模式
适配器模式可以将一个类的接口和另一个类的接口匹配起来,而无需修改原来的适配器接口和抽象目标接口类 适配器模式有类适配器和对象适配器两种 适配器模式的结构 **1.Target(目标抽象类):**就是客户所需要的类,它可以是一个抽象类,可以是一个接口,也可以是一个具体类。 **2.Adapter(适配器类):**这个类是适配器模式中的核心,他通过实现Target接口并且继承Adaptee类来使target和adaptee二者产生联系 **3.Adaptee(适配器类):**这个类就是需要被适配的角色,他定义了原创 2020-09-21 23:35:36 · 812 阅读 · 0 评论 -
原型模式
原型模式是一种创建型模式,它的工作原理很简单,将一个对象克隆给另一个需要使用它的对象,这里通过克隆方法创建出来的对象是一个全新的对象,他们在内存中拥有新的地址,通常对克隆所产生的对象进行修改不会对原型对象造成任何影响。 原型模式的结构 **1.prototype(抽象原型类):**它是声明克隆方法的接口,是所有具体原型类的公共父类,它可以是抽象类,也可以是抽象接口,甚至还可以是具体实现类 **2.ConcretePrototype(具体原型类):**它实现在抽象原型类中声明的克隆方法,在克隆方法中返回自己的原创 2020-09-20 22:40:44 · 112 阅读 · 0 评论 -
建造者模式
建造者模式是一种对象创建型模式,它将客户端与包含多个部件的复杂对象的创建过程分离,客户端无须知道复杂对象的内部组成部分与装配方式,秩序要知道所需建造者的类型即可。 建造者模式的结构 1.Builder(抽象建造者):他为创建一个产品对象的各个部件指定抽象接口,在这种接口中一般会有两种方法.1:buildPartX():用来构建对象的各个部件,2:getResult():可以用来返回复杂对象 2.ConcreteBuilder(具体建造者):它实现了build接口,实现了各个部件的具体构造和装配方法,定义并明原创 2020-09-14 19:41:50 · 114 阅读 · 0 评论 -
工厂模式
1简单工厂模式 简单工厂模式是属于创建型模式,是工厂模式的一种,简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族重最简单实用的模式 简单工厂模式:定义了一个创建对象的类,由这个类来封装实例化对象的行为 在软件开发重,当我们会用到大量的创建某种,某类或者某批对象时,就会使用到工厂模式、 简单工厂模式包含三个角色 1.**factory(工厂角色)**:就是工厂类,他是简单工厂模式的核心;这个类是直接被外界调用的,他负责创建所需的产品的对象;返回值的类型是抽象产品类型Prod原创 2020-09-07 17:04:41 · 126 阅读 · 0 评论 -
单例模式
单例模式 所谓累的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法 1.饿汉式(静态常量) 这种方式的缺点就是可能会造成内存的浪费,因为不管我们是否会用到这个对象,这个对象都会在内存重创建,如果可以确保,这个对象在程序运行期间一定可以用到,那么使用饿汉式是不错的选择 package com.designpatten.singleton.type1; public class Singleton01 { publi原创 2020-08-13 09:09:30 · 123 阅读 · 0 评论