
设计模式
AnimalsD
如发现有任何问题,欢迎指出,相互学习---402759452
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
01简单工厂模式
目录 一.简单工厂模式定义: 二.模式中包含的角色以及其职责 三.简单工厂模式优缺点 四.代码实现实例 一.简单工厂模式定义: 简单工厂模式属于类的创建型模式,又叫做静态工厂方法模式。 通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。 二.模式中包含的角色以及其职责 1.工厂(Creator)角色 简单工厂模式的核心,它负责实...原创 2019-04-27 23:19:17 · 290 阅读 · 0 评论 -
09策略模式
一、什么是策略模式 Strategy模式也叫策略模式是行为模式之一,它对一系列的算法加以封装,为所有算法定义一 个抽象的算法接口,并通过继承该抽象算法接口对所有的算法加以封装和实现,具体的算法选择 交由客户端决定(策略)。Strategy模式主要用来平滑地处理算法的切换 。 二、策略模式结构 Sstrategy是一个公共的接口,有且仅有一个;具体的实现策略可以有若干个;Context提供一个...原创 2019-05-01 13:43:34 · 175 阅读 · 0 评论 -
08装饰模式
一、什么是装饰模式 装饰( Decorator )模式又叫做包装模式。通过一种对客户端透明的方式来扩展对象的功能,是继承关系的一个替换方案。 二、装饰模式的结构 一环套一环! 继承、关联(传参) 三、装饰模式的角色和职责 1)抽象组件角色: 一个抽象接口,是被装饰类和装饰类的父接口。 2)具体组件角色:为抽象组件的实现类。 3)抽象装饰角色:包含一个组件的引用,并定义了与抽象组...原创 2019-04-30 23:43:33 · 143 阅读 · 0 评论 -
07建造者模式
一、什么是建造者模式 Builder模式也叫建造者模式或者生成器模式,是由GoF提出的23种设计模式中的一种。 Builder模式是一种对象创建型模式之一,用来隐藏复合对象的创建过程,它把复合对象的创建 过程加以抽象,通过子类继承和重载的方式,动态地创建具有复合属性的对象。 二、建造者模式结构 其中建造者时一个公共接口,提供构造的方法;具体的建设者实现建设者接口,提供一个全局的获取建...原创 2019-04-30 22:09:48 · 132 阅读 · 0 评论 -
06原型模式
一、什么是原型模式 Prototype模式是一种对象创建型模式,它采取复制原型对象的方法来创建对象的实例。 使用Prototype模式创建的实例,具有与原型一样的数据。 二、原型模式的特点 1. 由原型对象自身创建目标对象。也就是说,对象创建这一动作发自原型对象本身。 2.目标对象是原型对象的一个克隆。也就是说,通过Prototype模式创建的对象,不仅仅与原型 对象具有相同的结构,还与原...原创 2019-04-30 19:57:56 · 109 阅读 · 0 评论 -
05单例模式
一、什么是单例模式 1.定义:单例模式是一种对象创建型模式,使用单例模式,可以保证为一个类只生成唯一的实例对象。 也就是说,在整个程序空间中,该类只存在一个实例对象。 2.核心思想:保证一个类只有一个实例,并且提供对该实例加以访问的全局访问方法。 二、为什么使用单例模式 在应用系统开发中,我们常常有以下需求: 1) 在多个线程之间,比如servlet环境,共享同一个资源或者操作同一个对象...原创 2019-04-29 22:28:36 · 109 阅读 · 0 评论 -
14组合模式
一、什么是组合模式 Composite模式也叫组合模式,是构造型的设计模式之一。 通过递归手段来构造树形的对象结构,并可以通过一个对象来访问整个对象树。 二、组合模式的结构 三、组合模式的角色和职责 Component (树形结构的节点抽象): - 为所有的对象定义统一的接口(公共属性,行为等的定义) - 提供管理子节点对象的接口方法 - [可选]提供管理父节点对象的接口方法 Le...原创 2019-05-04 15:12:25 · 214 阅读 · 0 评论 -
04工厂模式方法实例实现——计算器
一、面向过程的方法 采用传统的面向过程方法,实现一个简单的计算器——加减乘除的功能,只需要按照顺序,一步一步实现即可 其中除以0的情况未处理! public class MainClass { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); ...原创 2019-04-28 20:16:04 · 1328 阅读 · 0 评论 -
13外观模式
一、什么是外观模式 Facade模式也叫外观模式,是由GoF提出的23种设计模式中的一种。 Facade模式为一组具有类似功能的类群,比如类库,子系统等等,提供一个一致的简单的界面。 这个一致的简单的界面被称作facade。 二、外观模式的结构 三、外观模式的角色和职责 Facade :为调用方定义简单的调用接口。 Clients : 调用者。通过Facade接口调用...原创 2019-05-04 09:29:32 · 130 阅读 · 0 评论 -
12代理模式——静态和动态
一、什么是代理模式 Proxy模式又叫做代理模式,是构造型的设计模式之一,它可以为其他对象提供一种代理(Proxy)以 控制对这个对象的访问。 所谓代理,是指具有与代理元(被代理的对象)具有相同的接口的类,客户端必须通过代理与被代理的目标 类交互,而代理一般在交互的过程中(交互前后),进行某些特别的处理。 二、代理模式的结构 三、代理模式的角色及职责 subject(抽...原创 2019-05-04 00:04:00 · 192 阅读 · 0 评论 -
11享元模式
一、什么是享元模式 Flyweight模式也叫享元模式,是构造型模式之 一,它通过与其他类似对象共享数据来减小内存占用。 二、享元模式结构 ...原创 2019-05-03 21:47:35 · 117 阅读 · 0 评论 -
03抽象工厂模式
一、抽象工厂模式: 抽象工厂模式是所有形态的工厂模式中最为抽象和最其一般性的。 抽象工厂模式可以向客户端提供一个接口,使得客户端在不必指定产品的具体类型的情况下, 能够创建多个产品族的产品对象。 二、产品族和产品等级结构 三、模式中包含的角色及其职责 1.抽象工厂(Creator)角色 : 抽象工厂模式的核心,包含对多个产品结构的声明,任何工厂类都必须实现这个接口。 2....原创 2019-04-27 23:17:39 · 159 阅读 · 0 评论 -
02工厂方法模式
一、工厂方法模式定义 工厂方法模式同样属于类的创建型模式又被称为多态工厂模式 。 工厂方法模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。 核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口, 这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修改具体工厂角色的情况下引进新的产品。 对于简单工厂模式来说,当需要增减...原创 2019-04-27 23:18:12 · 150 阅读 · 0 评论 -
10观察者模式
一、什么是观察者模式 Observer模式是行为模式之一,它的作用是当一个对象的状态发生变化时,能够自动通知其他 关联对象,自动刷新对象状态。 Observer模式提供给关联对象一种同步通信的手段,使某个对象与依赖它的其他对象之间保持 状态同步。 二、观察者模式结构 三、观察者模式角色及其职责 Subject(被观察者) : 被观察的对象。当需要被观察的状态发生变化时,需要通...原创 2019-05-01 15:36:46 · 154 阅读 · 0 评论