设计模式
文章平均质量分 78
方思永江
Java新手
展开
-
设计模式——单例模式
一般情况下,不建议使用第 1 种和第 2 种懒汉方式,建议使用第 3 种饿汉方式。只有在要明确实现 lazy loading 效果时,才会使用第 5 种登记方式。如果涉及到反序列化创建对象时,可以尝试使用第 6 种枚举方式。如果有其他特殊的需求,可以考虑使用第 4 种双检锁方式。原创 2023-02-26 19:09:08 · 73 阅读 · 0 评论 -
设计模式——工厂模式
简单工厂并不算一种设计模式,它更像是一种设计策略。本章将着重介绍工厂方法模式以及抽象工厂模式。假设我们有一颗许愿树,能够根据用户输入的桃子种类,产出一颗对应种类桃子。为了方便快捷,我们可能会这样写(极大概率不会这样)其中,Peach是桃子的抽象类,getDescription()方法返回对此种桃子种类的描述。这样完成了对上述需求的编写,但这样,当我们想要在其他地方使用这段代码时,就面临者重用的问题。以及,后续对判断逻辑的修改可能会造成创建逻辑代码复杂度剧增。原创 2023-02-26 19:08:23 · 91 阅读 · 0 评论 -
设计模式——装饰者模式
装饰者模式动态地将责任附加到对象上,若要扩展功能,装饰者模式提供了比继承更具有弹性的替代方案新设计原则:对扩展开放,对修改封闭当编写装饰者时,不应该去依赖于某种具体的被装饰类。原创 2023-02-26 19:07:42 · 120 阅读 · 0 评论 -
设计模式——观察者模式
新的设计原则:为交互对象之间的松耦合而努力。原创 2023-02-26 19:05:29 · 60 阅读 · 0 评论 -
设计模式——策略模式
封装变化面向接口编程多用组合,少用继承。原创 2023-02-26 18:58:23 · 68 阅读 · 0 评论