![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
陈橙橙丶
不放手 直至理想到手
展开
-
设计模式(四):策略模式
定义策略模式(StrategyPattern)是指定义了算法家族、分别封装起来,让它们之间可以互相替换,此模式让算法的变化不会影响到使用算法的用户。应用场景1、假如系统中有很多类,而他们的区别仅仅在于他们的行为不同。2、一个系统需要动态地在几种算法中选择一种。优点1、策略模式符合开闭原则。2、避免使用多重条件转移语句,如if…else…语句、switch语句3、使用策略模式可以提高...原创 2020-04-07 20:18:32 · 275 阅读 · 0 评论 -
设计模式(三):代理模式(静态代理、动态代理)
我们都知道SpringAOP是用代理模式实现,那么到底是如何实现的呢?我们来探一探究竟,并手写部分代码。定义代理模式(Proxy Pattern):是指为其他对象提供一种代理、来控制这个对象的访问。代理对象在客户端和目标对象之间起到一种中介作用。目的:1.保护目标对象:我们不直接访问被代理对象,而是通过中间媒介去访问。2.增强目标对象:参考SpringAop的功能。场景:生...原创 2020-03-31 15:10:28 · 2394 阅读 · 0 评论 -
设计模式(二):深入剖析单例模式(懒汉,饿汉,枚举,容器)
单例模式(Singleton Pattern) 是指确保一个类在任何情况下都绝对只有一个实例,并提供一个全局的访问点。比方说,你只能有一个女朋友,你是new不出来的.前言写文章的目的主要是为了自己知识的巩固,当然也十分希望在此能够得到业界前辈们的指导。本文主要围绕:懒汉单例、饿汉单例、枚举单例、容器单例。以及会分析他们为什么会是线程安全和不安全。一、饿汉单例该单例模式咱们直接看代码,...原创 2020-03-19 11:36:00 · 5382 阅读 · 1 评论 -
设计模式(一):工厂模式
工厂方法模式(FACTORY METHOD)是一种常用的类创建型设计模式,此模式的核心精神是封装类中变化的部分,提取其中个性化善变的部分为独立类,通过依赖注入以达到解耦、复用和方便后期维护拓展的目的。它的核心结构有四个角色,分别是抽象工厂;具体工厂;抽象产品;具体产品–摘自《百度百科》前言写文章的目的主要是为了自己知识的巩固,当然也十分希望在此能够得到业界前辈们的指导。本篇文章围绕:...原创 2020-03-18 16:45:40 · 1247 阅读 · 0 评论