![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
23种设计模式
文章平均质量分 71
Code-zyc
这个作者很懒,什么都没留下…
展开
-
java设计模式——门面与调停
目录门面:应用调停应用:门面:就很简单 对于客户来说假如我需要 看病 :我要去挂号,交挂号费,选科,排队,看病,拍片,在看片,开药方,缴费,拿药。需要一连串的操作应用用了门面模式,就需要 搞个类 当门面 用户 找他 即可。大概就是 这样的图片:调停大概这样的图片:应用:实际的应用 :消息中间件,就是把消息传给他 他进行分配。...原创 2022-03-17 18:08:34 · 325 阅读 · 0 评论 -
java设计模式——策略模式
文章目录适用的场景实际列子:举列:抱歉 sort 方法里面的参数应该是类数组我的抱歉没改问题一 猫按体重排序:问题2:我要拓展 狗也可以按照体重排序问题 我再拓展 猫按照身高排序,狗按照年龄:调用:总结:适用的场景1、如果在一个系统里面有许多类,它们之间的区别仅在于它们的行为,那么使用策略模式可以动态地让一个对象在许多行为中选择一种行为。2、一个系统需要动态地在几种算法中选择一种。3、如果一个对象有很多的行为,如果不用恰当的模式,这些行为就只好使用多重的条件选择语句来实现。实际列子:jdk中的原创 2022-03-17 14:09:48 · 385 阅读 · 0 评论 -
java设计模式——代理模式(未完成)
文章目录静态代理动态代理cglib 代理静态代理图片:代理类的方法:优缺点:动态代理图片:代理类的方法;public class ProxyFactory { private Object target; public ProxyFactory(Object target) { this.target = target; } //给目标对象生成一个代理对象 public Object getProxyInstance() { // /* * pub原创 2021-11-24 15:22:26 · 74 阅读 · 0 评论 -
Java设计模式——建造者(参考尚硅谷)
文章目录背景:传统模式:建造者模式:建造者模式的注意事项和细节背景:需要建房子:这一过程为打桩、砌墙、封顶房子有各种各样的,比如普通房,高楼,别墅,各种房子的过程虽然一样,但是要求不要相同的.请编写程序,完成需求.传统模式:package com.atguigu.builder;public abstract class AbstractHouse {//打地基public abstract void buildBasic();//砌墙public abstract void b原创 2021-05-13 18:50:09 · 141 阅读 · 2 评论 -
Java设计模式——原型模式
文章目录背景:浅拷贝深拷贝:方式一:方式二:优缺点:背景:我需要创建 10个一模一样的参数的 类浅拷贝创建好对应的类:注意要实现 cloneable 这个接口 并重写 他的clon 方法测试 : 发现 改了 参数 他也能进行 对应的反射 并且 地址 是不一样的。但是 如果增加一个对象参数的 就不一样了。测试代码:这就是 浅拷贝 如果是引用类型的 他仅仅只是 把地址复制一下。深拷贝:方式一:就是 你创建的那个 类也实现 cloneable 的 clon方原创 2021-05-12 21:07:56 · 73 阅读 · 1 评论 -
Java设计模式——工厂模式(参考狂神说)
文章目录核心本质简单工厂模式工厂模式抽象工厂模式核心本质1:实例化对象不使用new,用工厂方法代替。2:将选择实现类,创建对象统一管理和控制。从而将调用者跟我们的实现类解耦。简单工厂模式先来传统模式 (例子为车车的例子)public interface Car { void buycar();}public class BaoMa implements Car{ @Override public void buycar() { System.o原创 2021-05-11 22:48:01 · 299 阅读 · 0 评论 -
Java设计模式——单例模式(转自尚硅谷笔记)
饿汉式静态常量创建步骤:构造器私有化 (防止 new )类的内部创建对象向外暴露一个静态的公共方法。getInstance代码实现package com.atguigu.singleton.type1;public class SingletonTest01 {public static void main(String[] args) {//测试Singleton instance = Singleton.getInstance();Singleton instance2 =原创 2021-05-10 22:46:41 · 77 阅读 · 1 评论 -
设计模式七大原则
文章目录设计模式的主要目的设计模式七大原则单一职责原则基本介绍:列子:接口隔离原则基本介绍列子与传统方法相比的改进:依赖倒转原则基本介绍列子里氏替换原则基本介绍列子开闭原则基本介绍列子迪米特原则基本介绍列子合成复用原则基本介绍列子设计模式的主要目的1:代码重用性 (即 相同的代码,不用多次编写)2:可读性 (即 编程规范性,便于其他程序员的阅读和理解)3:可拓展性 (即 当需要增加新的功能时 非常方便 也称为可维护性)4: 可靠性 (当我们增加新的功能后 对原来的功能没有影响)5:使程序呈现原创 2021-05-10 12:56:37 · 133 阅读 · 0 评论