![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 92
从实战中收获设计模式
从源码中收获设计模式
毕竟尹稳健
凸头小白
展开
-
设计模式——装饰者模式
装饰者模式:动态的将新功能附加到对象上。在对象功能扩展方面,它比继承更有弹性,装饰者模式也体现了开闭原则(ocp)这里提到的动态的将新功能附加到对象和 ocp 原则。原创 2024-07-16 16:26:30 · 696 阅读 · 0 评论 -
设计模式——桥接模式
现在有一个需求,需要创建不同的图形,并且每个图形都有可能会有不同的颜色。我们可以利用继承的方式来设计类的关系:我们可以发现有很多的类,假如我们再增加一个形状或再增加一种颜色,就需要创建更多的类。试想,在一个有多种可能会变化的维度的系统中,用继承方式会造成类爆炸,扩展起来不灵活。每次在一个维度上新增一个具体实现都要增加多个子类。为了更加灵活的设计系统,我们此时可以考虑使用桥接模式。定义:将抽象与实现分离,使它们可以独立变化。原创 2024-07-16 14:31:18 · 587 阅读 · 0 评论 -
设计模式——适配器设计模式
适配器模式(Adapter Pattem)将某个类的接口转换成客户端期望的另一个接口表示,主的目的是兼容性,让原本因接口不匹配不能一起工作的两个类可以协同工作。其别名为包装器(Wrapper)适配器模式属于结构型模式主要分为三类:类适配器模式、对象适配器模式、接口适配器模式基本介绍:Adapter类,通过继承 src 类,实现dst 类接口,完成src->dst 的适配。原创 2024-07-11 15:27:36 · 683 阅读 · 0 评论 -
设计模式——建造者模式
建造者模式(Builder Pattern)又叫生成器模式,是一种对象构建模式。它可以将复杂对象的建造过程抽象出来(抽象类别),使这个抽象过程的不同实现方法可以构造出不同表现(属性)的对象。建造者模式 是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们.用户不需要知道内部的具体构建细节。原创 2024-07-10 16:03:30 · 966 阅读 · 0 评论 -
设计模式——原型模式
原型模式(Prototype 模式)是指:用原型实例指定创建对象的种类,并且通过拷贝这些原型,创建新的对象原型模式是一种创建型设计模式,允许一个对象再创建另外一个可定制的对象,无需知道如何创建的细节工作原理是:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建,即 对象.clone()形象的理解:孙大圣拔出猴毛,变出其它孙大圣用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型对象相同的新对象。原创 2024-07-09 17:10:02 · 987 阅读 · 0 评论 -
设计模式——工厂模式
优点是比较好理解,简单易操作。缺点是违反了设计模式的 ocp 原则,即对扩展开放,对修改关闭。即当我们给类增加新功能的时候,尽量不修改代码,或者尽可能少修改代码比如我们这时要新增加一个新的实现类,需要修改源代码现有3个类,分别是Coffee、AmericanCoffee、LatteCoffeeCoffee类System.out.println("Coffee加糖");System.out.println("Coffee加奶");@Override。原创 2024-07-08 17:35:39 · 828 阅读 · 1 评论 -
设计模式——单例设计模式
单例模式保证了 系统内存中该类只存在一个对象,节省了系统资源,对于一些需要频繁创建销毁的对象,使用单例模式可以提高系统性能当想实例化一个单例类的时候,必须要记住使用相应的获取对象的方法,而不是使用 new单例模式使用的场景:需要频繁的进行创建和销毁的对象、创建对象时耗时过多或耗费资源过多(即:重量级对象),但又经常用到的对象、工具类对象、频繁访问数据库或文件的对象(比如数据源、session 工厂等)原创 2024-07-05 17:38:05 · 712 阅读 · 0 评论