首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
浪人与酒丶
掘友等级
Java开发工程师
Java
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
92
文章 88
沸点 4
赞
92
返回
|
搜索文章
最新
热门
深入理解23种设计模式(23) -- 责任链模式
责任链模式 (Chain of Responsibility Pattern) , 为请求者创建一个接受者对象的链,这种模式对请求对发送者和请求者进行解耦。 责任链模式通常每个接收者都包含对另一个接收者都引用,如果一个对象不能处理该请求,那么他就会把相同的请求传给下一个接收者解…
深入理解23种设计模式(22) -- 策略模式
ConcreteStrategy是具体策略类,封装了具体的算法或行为,继承于Strategy。 这里使用的就是策略模式。 AbortPolicy:直接抛出异常。 CallerRunsPolicy:只用调用者所在线程来运行任务。 DiscardOldestPolicy:丢弃队列里…
深入理解23种设计模式(21) -- 状态模式
状态模式 (State pattern): 它主要是用来解决对象在多种状态之间的转换,需要对外输出不同的行为的问题,状态和行为是一一对应的,状态之间可以互相转换。 当一个对象的内在状态改变时,允许改变其行为,这个对象看起来是改变了其他类。 Context : 为环境角色,用于维…
深入理解23种设计模式(20) -- 抽象工厂模式
提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 AbstractFactory : 抽象工厂角色,它声明了一组用于创建一种产品的方法,每一个方法对应一种产品。 ConcreteFactory : 具体工厂角色,它实现了在抽象工厂中定义的创建产品的方法,生产…
深入理解23种设计模式(19) --解释器模式
在编译原理中,一个算数表达式通过词法分析器形成词法单元,而后这些词法单元又通过语法解析器构建语法分析树,最终形成一颗抽象的语法分析树。这里的词法分析器和语法分析器都可以做为解析器 Context : 是环境角色,包含解释器之外的一些全局信息。 AbstractExpressio…
深入理解23种设计模式(18) -- 备忘录模式
备忘录模式(Memento Pattern)在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将这个对象恢复到原先的状态 Originator : 是发起人,负责记录当前时刻的内部状态信息,提供创建备忘录和恢复备忘录数据的功能,实现其他业务…
深入理解23种设计模式(17) -- 中介者模式
中介者模式(Mediator Pattern)用一个中介对象来封装一系列对象交互,中介使各个对象不要显示的相互引用,从而使其耦合松散,而且可以独立的改变他们之间的交互。 中介者属于行为型模式,使代码易于维护。 ConcreteColleague : 是具体同事类,每个具体同事只…
深入理解23种设计模式(16) --观察者模式
Subject : 是主题,它把所有对观察者对象的引用文件存在了一个聚集里,每个主题都可以有任何数量的观察者。抽象主题提供了一个接口,可以增加和删除观察者对象 ConcreteObserver : 是具体观察者,实现抽象观察者角色所要求的更新接口,以便使本身的状态与主题的状态相…
深入理解23种设计模式(2) -- 工厂模式
工厂顾名思义就是创建产品,根据产品是具体产品还是具体工厂可分为简单工厂模式和工厂方法模式,根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。该模式用于封装和管理对象的创建,是一种创建型模式。本文从一个具体的例子逐步深入分析,来体会三种工厂模式的应用场景和利弊。 1. 简单工厂…
深入理解23种设计模式(1) -- 单例模式
-- 如果不需要延迟加载单例,可以使用枚举或者饿汉式,相对来说枚举性好于饿汉式。 -- 如果需要延迟加载,可以使用静态内部类或者懒韩式,相对来说静态内部类好于懒汉式。
下一页
个人成就
文章被点赞
208
文章被阅读
57,265
掘力值
2,387
关注了
2
关注者
76
收藏集
0
关注标签
4
加入于
2020-08-08