单例设计模式
来源:互联网 发布:android编程颜色表 编辑:程序博客网 时间:2024/06/05 16:56
1:单例设计:
2:工厂设计模式:1) 饿汉式:
随着类的加载,创建一个静态类的对象,对外提供一个静态的方法,得到这个对象,
2) 懒汉式:
随着类的加载,等到需要用到的时候,再通过方法创建对象.(延迟加载)
懒汉式由于有懒加载,所以存在一个线程安全问题,需要将方法定义为同步方法,synchronized static 锁对象时类名.class
3) 步骤:
先将类的构造方法私有化,然后在成员位置创建一个静态对象,对外提供一个方法,来得到创建的对象.
3:简单工厂模式:1) 抽象类,创建一个工厂的接口,让当前接口方法的返回值是一个抽象类,然后根据具体的类,来提供一个工厂类即可,让这些工厂类来实现这个接口.
优点:不影响已有的代码,后期维护容易,增强了系统的扩展性.
缺点:代码量大.
1) 简单工厂模式,也是静态工厂模式,将工厂类的构造方法私有化,然后提供静态方法,来生成一些类的实例.
优点:客户端不需要在负责对象的创建,从而明确各个类的功能
缺点:不利于后期维护,当需要增加一个实例时,就需要修改工厂类的代码.
阅读全文
0 0
- 设计模式--单例
- 单例设计模式
- 设计模式----单例
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 设计模式-单例
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 2017河南省信息学奥林匹克联赛复赛监考日志--CCF NOIP
- 笔记
- 习题6.2(2)
- python dlib学习(八):训练人脸特征点检测器
- TensorFlow深度学习,一篇文章就够了
- 单例设计模式
- 001 Windows8.1和Ubuntu14.04双系统搭建
- 图形用户界面之窗口程序
- html-初学
- <JS高级程序设计>--对象
- Vue 2.0的学习笔记: Vue实例和生命周期
- 深入理解HashMap(一)
- js 记录浏览器位置
- centos重新安装mysql切换datadir系列问题