![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
wqc8994
没有
展开
-
设计模式之单例模式
单例模式,顾名思义,在程序运行时只创建一个对象。减少了内存的开销。实现的关键点在于私有化构造函数。以下介绍四种单例实现的方式: 1. 饿汉式/** * 饿汉式创建单例 * 简单方便 */public class Singleton01 { private static final Singleton01 INSTANCE = new Singleton01(); private Singleton01() {} public static Sin...原创 2020-10-28 22:34:05 · 204 阅读 · 0 评论 -
设计模式之策略模式
策略模式:用于针对不同的场景实现不同的处理。设计场景:我们需要对数据进行校验,但是需要针对不同的数据类型做不同的校验。首先,我们要创建一个校验的接口。public interface Validator { <T> boolean validate(T t);}然后,我们实现校验接口实现一些校验规则。我写了字符串校验和日期校验。public class StringValidator implements Validator { @Override原创 2020-11-03 22:12:22 · 102 阅读 · 0 评论 -
设计模式之观察者模式
观察者模式,用来去监听事件的发生,当时间发生时,触发相应的行为。假设有这么一个场景:在学校,有老师和学生,都有上课和考试事件。上课事件发生时,老师讲课,学生听课;考试事件发生,老师监考,学生考试。首先,我们要创建一个事件类。有个添加观察者的方法和事件发生时的行为方法。public abstract class Event<T> { protected abstract void action(); protected abstract void addObser原创 2020-11-03 21:37:34 · 63 阅读 · 0 评论 -
设计模式之装饰者模式
装饰者模式,用于给一个主体添加一些装饰。比如说,一个蛋糕,我们选择加不同的水果,这样就变成不同的水果蛋糕,也可以添加牛奶,变成牛奶蛋糕。如此等等。本文的例子以实现不同的蛋糕为例。 首先,我们要创建一个蛋糕对象。public class Cake { private int size; private BigDecimal price; public Cake() { } public Cake(int size, BigDecimal...原创 2020-10-30 20:56:50 · 95 阅读 · 0 评论