设计模式
文章平均质量分 76
钗头风
玉在椟中求善价,钗于匣内待时飞
展开
-
简单工厂模式&&抽象工厂模式
工厂模式的核心就是把对象的生产过程交给工厂来完成,当外部需要一个对象时,由工厂提供接口来获取对象,这样一来即使生产对象的过程变了,仍然不影响外部对对象的获取和使用。它把对象的创建过程封装起来,隐藏了对象创建的细节,根据外部传入的参数来决定返回哪一种对象,它的缺点就是如果要增加对象类型,或者修改某一个对象的创建方法时,就必须修改工厂类,这不符合对象编程设计原则之一的“开闭原则对扩展开放,对修改封闭。在实现新的需求的时候,最好能够只是扩展而不去修改已经写好的代码,这样能够把新需求带来的风险降到最低。原创 2024-04-16 11:11:56 · 982 阅读 · 0 评论 -
单例模式的七种写法
如果不使用volatile修饰instance实例,则创建对象时被JVM重排序后的执行流程可能如下(“空指针问题”),若创建出来的对象为null,由于“可见性”问题,下次去获取实例时还是会创建多个对象;若不用双重检查也可以使用synchronized去修饰获取实例方法来保证线程安全(类似于懒汉式的同步方法);使用static定义的,所以枚举的本质就是一个静态编译的对象;使用volatile目的在于,禁止创建对象时的3个步骤发生重排序,防止创建出的对象空指针问题;使用枚举的方式实现单例最好;原创 2023-12-21 13:48:50 · 716 阅读 · 0 评论