![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
MYws.
曾许人间第一流
展开
-
建造者模式
建造者模式 定义:建造者模式又被称为生成器模式,这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 @Slf4j @ToString //@Builder 工作中可使用该注解直接生成建造者 public class UserInfo { private Long userId; private String userName; private Long cityId; private String cityName; private String原创 2022-01-14 10:52:57 · 111 阅读 · 0 评论 -
观察者模式
观察者模式 定义了对象之间的一对多依赖,让多个观察者对象同时监听某一个主题对象,当主题对象发生变化时,它的所有依赖者都会收到通知并更新 优点:可以在运行时建立对象之间的关系 代码参考Spring Boot源码 AbstractApplicationEventMulticaster类、ApplicationListener类 //事件发布者 public class EventMulticaster { private final ListenerRetriever listenerRetrie原创 2022-01-03 16:02:12 · 137 阅读 · 0 评论 -
最好的单例模式?
单例模式饿汉枚举懒汉双重检测静态内部类 饿汉 1.为什么要加final? 防止子类继承父类,子类中的一些不适当操作破坏单例。 2.如果实现了序列化接口,还要做什么来防止反序列化破坏单例? private Object readResolve() {return instance;} 这个方法在反序列化创建对象时会直接return当前的对象,而不会将字节码生成对象当成结果返回而破坏单例。 3.为什么要设置私有?是否能反射创建新的实例? 防止其它类通过构造方法直接创建对象 不能,任然可以通过暴力反原创 2020-07-17 18:03:26 · 256 阅读 · 0 评论