Fork me on GitHub

随笔分类 -  设计模式

摘要:###简介 装饰模式是在不必改变原类和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。 ###使用场景 通过继承的方式不现实的时候(可能由于排列组合产生类爆炸的问题)。 ###代码 顶级接口 public interface ICoffee { vo 阅读全文
posted @ 2021-08-20 16:31 晨度 阅读(39) 评论(0) 推荐(0) 编辑
摘要:###简介 提供一种方法顺序访问一个容器对象中的各个元素,而又不需要暴露该对象的内部表示。 ###使用场景 该模式JAVA一般都给我们已经实现,并不需要自己去实现 ###代码 该模式仅需类实现Iterable接口,然后提供一个实现Iterator接口的实例,最终提供hasNext()、next()方 阅读全文
posted @ 2021-08-19 19:51 晨度 阅读(24) 评论(0) 推荐(0) 编辑
摘要:###简介 某个类只有一个实例,且自行实例化并向整个系统提供此实例 ###使用场景 在某个系统中,该类只允许创建一个实例对象 ###代码 饿汉模式 public class HungryModel { private final static Student getsingleStudent=new 阅读全文
posted @ 2021-08-19 19:12 晨度 阅读(27) 评论(0) 推荐(0) 编辑
摘要:###简介 将一个复杂对象的构建与其表示分离,使得同样的构建过程可以创建不同的表示 ###使用场景 当创建一个对象时,参数超过4个且参数可选择,可以考虑使用 ###代码 实现类 public class Computer implements Serializable { private final 阅读全文
posted @ 2021-08-19 18:50 晨度 阅读(25) 评论(0) 推荐(0) 编辑
摘要:###简介 将一个接口转换为客户端或服务器端所期待的接口,从而使两个接口不兼容的类可以在一起工作,高级的接口转换表现形式。 ###代码 三方接口 public interface OriginalLogger { void d(int priority,String message,Object . 阅读全文
posted @ 2021-08-18 10:28 晨度 阅读(33) 评论(0) 推荐(0) 编辑
摘要:##简介 工厂顾名思义就是创建产品,根据产品是具体产品还是具体工厂可分为简单工厂模式和工厂方法模式,根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。该模式用于封装和管理对象的创建,是一种创建型模式。本文从一个具体的例子逐步深入分析,来体会三种工厂模式的应用场景和利弊。 ###简单工厂模式 该模式 阅读全文
posted @ 2021-08-13 10:11 晨度 阅读(108) 评论(0) 推荐(0) 编辑
摘要:##定义 为其他对象提供一个代理以控制对某个对象的访问。代理类主要负责为委托了(真实对象)预处理消息、过滤消息、传递消息给委托类,代理类不现实具体服务,而是利用委托类来完成服务,并将执行结果封装处理。 其实就是代理类为被代理类预处理消息、过滤消息并在此之后将消息转发给被代理类,之后还能进行消息的后置 阅读全文
posted @ 2021-06-19 17:18 晨度 阅读(37) 评论(0) 推荐(0) 编辑
摘要:###简介 桥接模式是将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(Interfce)模式。 官方介绍 (1):如果一个系统需要在抽象化和具体化之间增加更多的灵活性,避免在两个层次之间建立静态的继承关系,通过桥接 阅读全文
posted @ 2020-08-07 14:59 晨度 阅读(232) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示