![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
Wills丶
这个作者很懒,什么都没留下…
展开
-
组合模式
什么是组合模式?组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。这种模式创建了一个包含自己对象组的类。该类提供了修改相同对象组的方式。透明组合模式UML透明模式是把组合使用的方法放到抽象类中,不管叶子对象还是树枝对象都有相同的结构,这样做的好处就是叶子节点和树枝节点对于外界没有区别,它们具备完全一致的行为接口。但原创 2020-09-11 16:01:08 · 808 阅读 · 0 评论 -
装饰者模式
什么是装饰者设计模式装饰着模式:简单的一句话理解就是,动态的给一个对象添加一些额外的功能,装饰者模式相对于生成子类更加的灵活装饰者设计模式UML图可以通俗理解为装饰者设计模式的组成 Component(抽象构件):它是装饰类和具体构件的公共父类; ConcreteComponent(具体构件):具它是抽象构件对象的子类,用来定义具体的构件对象; Decorator(抽象装饰类):进继承抽象构件,用于给具体的构件添加一些新的职责; ConcreteD原创 2020-09-11 16:00:36 · 185 阅读 · 0 评论 -
原型模式
原型模式在说明本模式的用处之前,我们先来举两个例子:假设有1只羊,我们想利用克隆技术,来获得10只一模一样的羊,假设使用代码实现,我们可以使用以下代码:public class Demo1 {public static void main(String[] args) { Sheep s = new Sheep("Wills",23); Sheep s1 = new Sheep(s.getName(),s.getAge()); Sheep s2 = new Sheep...原创 2020-09-11 16:00:06 · 107 阅读 · 0 评论 -
适配器设计模式
基本介绍爱好数码产品/游戏主机的帅哥美女们应该知道,如果我们购买了一个港版或者美版/欧版的机器,那么我们的电源线一定是要使用转换插头(Adapter)才能让机器开机的,其转换插头就是就是适配器(Adapter)了,而我们今天讲解的就是适配器设计模式 适配器模式(Adapter Pattern)将某个类的接口转换为客户端期望的另一个接口表示,主要目的是兼容性,让原本因为接口不匹配不能一起工作的两个类可以协同工作,还有另一个叫法叫做:包装器(Wrapper,是不是在很多源码中看到过?)原创 2020-09-11 15:59:35 · 123 阅读 · 0 评论 -
桥接模式
设计模式引入手机操作问题:现在对不同手机类型的不同品牌实现操作编程(比如:开机、关机、上网,打电话等),如图:如果按照我们初学Java编程可以很容易实现,思路呢类似于以下图:从功能上来说,这样设计是可以的。但是,若是增加一种新的样式,那么同样的它也会新增不同品牌手机的子类,这样就会导致类爆炸的问题。如果添加一个旋转系列的手机,就会做如下操作传统方案解决手机操作问题分析: 扩展性问题(类爆炸),如果我们再增加手机的样式(旋转式),就需要增加各个品牌手机的类,同样如果我原创 2020-09-11 15:59:03 · 129 阅读 · 0 评论 -
建造者模式
建造者模式传统小例子-盖房子 需要建房子:这一过程为打桩、砌墙、封顶 房子有各种各样的,比如普通房,高楼,别墅等房子虽然一样,但是要求是不相同的 编写程序完成需求 传统编码方式图解传统方式代码package com.atguigu.builder;public abstract class AbstractHouse { //打地基 public abstract void buildBasic(); //砌墙 public ab...原创 2020-09-11 15:58:30 · 122 阅读 · 0 评论 -
工厂设计模式
简单工厂模式 看一个具体的需求 有一个披萨的项目,要求便于披萨种类的扩展,便于维护1. 披萨的种类很多 比如:GreekPizza CheesePizza等2. 披萨的生产过程有:prepare、bake、cut、box3. 完成披萨店订购的功能+ 优点是比较好理解,简单易操作+ 缺点是违反了设计模式的ocp原则,即对扩展开放,对修改关闭,即当我们给类增加新功能的时候,尽量不修改代码,或者尽量少修改代码+ 如果要增加一个新的口味的披萨,则需要增加一个类的代...原创 2020-09-11 15:57:53 · 70 阅读 · 0 评论 -
单例设计模式
所谓类的单例设计模式,就是采取一定的方法保证在整个系统中,对某个类只能存在一个对象实例,并且该类只能提供一个取得其对象实例的方法(静态方法)。现在常见的设计模式有八种:饿汉式(静态常量) package com.wills.designMode.signleton;/** * 本例讲述饿汉式单例模式 * 应用实例:步骤如下: * * 1. 构造器私有化 * 2. 类的内部创建对象 * 3. 想外暴露一个静态的公共方法(getInstance) ...原创 2020-09-11 15:57:08 · 75 阅读 · 0 评论