设计模式
liu/
这个作者很懒,什么都没留下…
展开
-
建造者模式
package Builder;import java.math.BigDecimal;import java.util.ArrayList;import java.util.List;/** * @Author Liuyunda * @Date 2021/6/21 15:13 * @Email man021436@163.com * @Description: DOTO */// 创建一个表示食物条目和食物包装的接口。interface Item{ public Stri原创 2021-06-21 16:23:57 · 106 阅读 · 0 评论 -
责任链模式
package ChainOfResponsibility;/** * @Author Liuyunda * @Date 2021/6/21 14:33 * @Email man021436@163.com * @Description: 责任链模式 请假审批:班主任->教导主任->校长 * 请假天数不超过2天 由班主任审批,超过两天并且不超过一个月由教导主任审批,大于一个月由校长审批 */// 领导类abstract class Leader { private L原创 2021-06-21 14:50:58 · 99 阅读 · 0 评论 -
策略模式(这个标题为啥非要五个字起步)
package Strategy;/** * @Author Liuyunda * @Date 2021/6/19 17:14 * @Email *** * @Description: 策略模式:我们可以根据环境或者条件的不同,选择不同的处理方式,来完成某些功能 * 例如: * 你作为一城之主。面对百万强敌来袭,是战,是降,还是求和。 */interface Strategy{ /** * @description: 处理方法 * @param: []原创 2021-06-19 17:31:54 · 93 阅读 · 0 评论 -
模版方法模式
package template;/** * @Author Liuyunda * @Date 2021/6/17 16:52 * @Email man021436@163.com * @Description: DOTO */abstract class MakeSoup{ /** * @description: 起锅烧油 * @param: [] * @return: void * @author: Liuyd * @date:原创 2021-06-17 17:14:56 · 47 阅读 · 0 评论 -
三种适配器模式
https://blog.csdn.net/weixin_46168350/article/details/110878560转载 2021-06-17 16:23:16 · 95 阅读 · 0 评论 -
装饰器模式
package decorator;/** * @Author xxx * @Date 2021/6/17 14:20 * @Email xxx * @Description: 装饰器模式 * 4个角色 * 基本的接口或者抽象类,提供方法 * 具体的实现者 * 装饰者 * 具体的装饰者 * 关系 * 具体实现者实现基本接口,提供基本功能 * 装饰者实现基本接口,并持有具体实现者的引用 * 具体装饰者继承装饰者原创 2021-06-17 14:47:00 · 68 阅读 · 0 评论 -
观察者模式
在网上看到的一个例子,感觉很合适分享给大家!package observer;import java.util.*;/** * @Author *** * @Date 2021/6/10 15:42 * @Email *** * @Description: 观察者模式 */public class Observer { public static void main(String[] args) { BellEventSource bell = new BellE转载 2021-06-10 16:09:07 · 68 阅读 · 0 评论 -
CGLIB动态代理
https://blog.csdn.net/xiaohai0504/article/details/6832990转载 2021-06-10 15:19:53 · 44 阅读 · 0 评论 -
动态代理模式
package proxy;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;/** * @Author *** * @Date 2021/6/10 11:01 * @Email ***![在这里插入图片描述](https://img-blog.csdnimg.cn/20210610151009770.png?x-oss-proc转载 2021-06-10 15:12:36 · 47 阅读 · 0 评论 -
静态代理模式
package proxy;/** * @Author *** * @Date 2021/6/10 11:01 * @Email *** * @Description: 静态代理:缺点接口发生改变需要维护很多类,不易维护 */interface ByHouse{ Integer buyHouse();}class ByHouseImpl implements ByHouse { @Override public Integer buyHouse() {原创 2021-06-10 15:09:10 · 38 阅读 · 0 评论 -
简单工厂模式
package factory;/** * @Author *** * @Date 2021/6/9 17:39 * @Email *** * @Description: DOTO */interface Animal{ void call();}class Cat implements Animal{ @Override public void call() { System.out.println("喵喵"); }}class原创 2021-06-10 14:57:39 · 47 阅读 · 0 评论 -
单例模式的实现方式
package singleton;/** * @Author **** * @Date 2021/6/9 17:22 * @Email **** * @Description: 单例模式 */// 懒汉双重检验锁class LanSingletonDoubleCheckedLock { private volatile static LanSingletonDoubleCheckedLock instance; private LanSingletonDoubleChec原创 2021-06-10 14:52:15 · 45 阅读 · 0 评论 -
抽象工厂模式
package factory;/** * @Author *** * @Date 2021/6/9 18:04 * @Email *** * @Description: DOTO */interface Animal2{ void call();}class Cat2 implements Animal2{ @Override public void call() { System.out.println("喵喵"); }}cl原创 2021-06-10 15:02:47 · 52 阅读 · 0 评论