
设计模式
chuan.bai
这个作者很懒,什么都没留下…
展开
-
设计模式之装饰模式
#####抽象类/** * @Author: chuan.bai * @Description 制作面条抽象类 * @Date: Created on 16:55 2021/4/1 * @Modified By: */public abstract class NoodlesAbstract { /** * 制作面条的方法 */ abstract void process();}#####基础类/** * @Author: chuan.原创 2021-04-02 11:06:25 · 128 阅读 · 0 评论 -
设计模式之建造者模式
建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。一个 Builder 类会一步一步构造最终的对象。该 Builder 类是独立于其他对象的。#####步骤接口/** * @Author: chuan.bai * @Description 泡茶接口 * @Date: Created on 16:45 2021/3/26 * @Modified By: */public interfa原创 2021-04-01 16:40:09 · 143 阅读 · 0 评论 -
设计模式之单例模式
###单例模式的定义:确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例####单例的使用场景:1.要求生成唯一序列号的环境2.创建一个对象需要消耗的资源过多3.需要定义大量的静态常量和静态方法####单例模式分为懒汉式和饿汉式两种:####饿汉式单例:/** * @Author: chuan.bai * @Description 饿汉式单例模式 * @Date: Created on 08:59 2018/3/14 * @Modified By: */public原创 2021-04-01 16:38:33 · 139 阅读 · 0 评论 -
设计模式之外观模式
外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。这种模式涉及到一个单一的类,该类提供了客户端请求的简化方法和对现有系统类方法的委托调用。#####抽象接口/** * @Author: chuan.bai * @Description 脸的抽象类 包含 耳朵 鼻子 眼睛等 * @Date: Created on 13:35 2021/3/26 * @Modi原创 2021-04-01 16:37:20 · 196 阅读 · 0 评论 -
设计模式之工厂模式
#####工厂类/** * @Author: chuan.bai * @Description 支付工厂 * @Date: Created on 10:58 2021/3/25 * @Modified By: */public interface PayFactory { void submitOrder(); void refundOrder(); void cancelOrder();}#####paypal实现/** * @Author: chuan原创 2021-04-01 16:28:24 · 70 阅读 · 0 评论 -
设计模式之观察者模式
#####被观察者/** * @Author: chuan.bai * @Description 邮件发送人 * @Date: Created on 15:03 2021/4/1 * @Modified By: */public interface EmailSender { /** * 新增需要发送邮件的人 * @param emailReceiver */ void addUser(EmailReceiver emailReceiver);原创 2021-04-01 16:26:30 · 98 阅读 · 0 评论 -
设计模式之模板模式
定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。#####模板类/** * @Author: chuan.bai * @Description 定义组装电脑的工序 * @Date: Created on 15:58 2021/3/26 * @Modified By: */public abstract class AssemblingComputerTemplate { public abstract原创 2021-04-01 09:40:26 · 79 阅读 · 0 评论 -
设计模式之策略模式
定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。#####策略抽象/** * @Author: chuan.bai * @Description 策略抽象 * @Date: Created on 17:25 2021/3/24 * @Modified By: */public interface PayStrategy { void doPay(PayOrderRequest request);}#####提交支付单策略/** * @Author: chu原创 2021-04-01 09:38:56 · 88 阅读 · 0 评论 -
设计模式之责任链模式
####抽象处理者/** * @Author: chuan.bai * @Description 抽象处理者 * @Date: Created on 15:45 2021/3/24 * @Modified By: */public abstract class Handler { protected Handler nextHandler ; protected String stepName; //需要说明位于哪一步 public Handler( Str原创 2021-04-01 09:37:54 · 75 阅读 · 0 评论 -
设计模式之代理模式
售票处的抽象接口(抽象主题角色)/** * @Author: chuan.bai * @Description 售票处 * @Date: Created on 14:56 2021/3/24 * @Modified By: */public interface Ticketing { /** * 买火车票抽象类 */ void buyTicket();}火车站售票处(真实主题角色)/** * @Author: chuan.bai * @Desc原创 2021-04-01 09:36:53 · 77 阅读 · 0 评论