![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 60
silence、J
这个作者很懒,什么都没留下…
展开
-
策略模式在Spring下的实践(生产已用)
一、前言如果只使用 策略模式,还需要在代码中手动 new 出不同的策略实体再进行操作。如果使用 策略模式 + 工厂,new 策略的操作交给了工厂去做,但是在需求扩展需要添加新的策略时,不仅需要编写新增的策略代码,还要修改工厂类的代码使工厂具有加载新策略的功能。这样就违背了“开闭原则”,对扩展开放,对修改关闭。这时再加上广泛使用的Spring容器,就可以实现新策略的自动注册,只专注于编写新的策略代码即可。二、实践1. 类图2. 代码以订单操作为例(可根据需求改造成不同的策略)原创 2021-12-28 14:41:17 · 261 阅读 · 0 评论 -
Singleton单例模式
应用场景只需要一个实例如各种Mgr (manager管理类)如各种Factory饿汉式类加载到内存后,就实例化一个单例,JVM保证线程安全简单实用,推荐使用缺点:不管是否用到,类装载时就完成实例化/** *饿汉式: * * 类加载到内存后,就实例化一个单例,JVM保证线程安全 * 简单实用,推荐使用 * 缺点:不管是否用到,类装载时就完成实例化 */publi...原创 2020-04-08 16:00:06 · 119 阅读 · 0 评论 -
Proxy代理模式
静态代理各种代理类可以组合起来使用import java.util.Random;/** * 不改变源代码,记录坦克移动时间 * 使用代理模式 * 静态代理 */public class Tank implements Movable { /** * 模拟坦克移动了一段时间 */ @Override public void move(...原创 2020-04-14 11:10:26 · 255 阅读 · 0 评论