1.定义

保证一个类只有一个实例,并提供一个访问它的全局的访问点。
通常我们可以让一个全局变量使得一个对象被访问,但它不能防止你实例化多个对象。一个最好的办法就是,让类自身负责保存它的唯一实例。这个类可以保证没有其他实例可以被创建,并且它可以提供一个访问该实例的方法。

2.UML类图

3.特点

主要区分饿汉式和懒汉式,以及多线程下懒汉式的双重非空检查及加同步锁。

大话设计模式读书笔记之单例模式相关推荐

  1. 大话设计模式读书笔记

    主题 概要 设计模式 大话设计模式读书笔记 编辑 时间 新建 20170423 序号 参考资料 1 大话设计模式 重新看了一遍设计模式,除了一些已经特别熟悉的模式,都自己敲了一遍代码,有些豁然开朗的感 ...

  2. 大话设计模式读书笔记之原型模式

    由于大话这本书是以C#语言为基础写就的,本设计模式的例子中使用了一些c#中的API,因此就不再引用此书中的例子了,参考了一篇博客园中的大神写就的浅显易懂的JAVA版原型模式,在此奉上链接,以供大家学习 ...

  3. 大话设计模式读书笔记(十三) 状态模式

    状态模式: 状态模式定义: 状态模式(State):当一个对象的内在状态改变时允许改变其行为,这个对象看起来像改变了其子类. 状态模式UMl类图: 状态模式Java代码实现 public class ...

  4. 大话设计模式读书笔记--4.代理模式

    生活中的例子: 班主任让班长通知班委下午3点开会 班长就是班主任的代理 代理模式的目的是: 隐藏真实访问对象,同时可以处理别的事情 定义 代理模式:为其他对象提供一种代理以控制对这个对象的访问 也就是 ...

  5. 大话设计模式读书笔记2----单一职责原则(SRP)

    单一职责原则(SRP):就一个类而言,应该仅有一个引起它变化的原因.如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或抑制这个类完成其他职责的能力.当变化发生时,设计会遭 ...

  6. 大话设计模式读书笔记11----建造者模式(Builder)

    建造者模式(Builder):将一个复杂对象的构建与它的表示分离,使得同样的建造过程可以创建不同的表示. 1.Builder是什么? 是创建一个Product对象的各个部件指定的抽象接口. 2.Con ...

  7. 大话设计模式读书笔记--6.原型模式

    简单的复制粘贴极有可能造成重复代码的灾难, 但是java中提供了克隆的功能, 如果一个对象创建过程复杂,又要频繁使用, 在初始化信息不发生变化的情况下,应当采取克隆而不是new一个对象 定义 原型模式 ...

  8. 大话设计模式读书笔记10----外观模式(Facade)

    外观模式(Facade):为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更容易使用. 1.在设计初级阶段,应该要有意识的将不同的两个层分离. 2.层与层之间建 ...

  9. 大话设计模式读书笔记之状态模式

    1.定义:当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类.主要解决的问题是当控制一个对象状态转换的条件表达式过于复杂时把状态的判断逻辑转移到表示不同状态的一系列类当中,可以把复 ...

最新文章

  1. 阿里数学竞赛最年轻金奖得主:15岁读少年班,21岁UC伯克利读博,想毕业就回国...
  2. java自学语法_Java自学笔记(一):基础知识
  3. 十分钟玩转 jQuery、实例大全
  4. amp 调用链_调用链选型之Zipkin,Pinpoint,SkyWalking,CAT
  5. protractor端到端测试简介
  6. 【Eclipse】eclipse在线安装反编译插件
  7. smart原则_为什么现在少有人用德鲁克的SMART原则做目标管理了?
  8. c语言简短的泡沫排序法编程,冒泡排序--简单(c语言)
  9. 如何解决IE6的3像素问题?
  10. Skywalking-11:Skywalking查询协议——案例分析
  11. 不止1亿像素相机 小米MIX 4有望首发第四代超声波屏下指纹
  12. 1009 Product of Polynomials (25)(25 分)
  13. 计算机网络原理应用题/计算题
  14. [转载] python创建集合set()_Python 集合set()
  15. html5类似ios下拉选择器,iosselect:一个js picker项目,在H5中实现IOS的select下拉框效果 - mufc-go...
  16. 怎么确定服务器是否支持ipmi,如何获取服务器的IPMI地址?
  17. TTL电平和CMOS电平的区别,详细分析他们的区别
  18. 财务软件虚拟服务器,财务服务器软件
  19. 完全卸载Office 2016 for Mac教程
  20. 快讯分类_如何从Google快讯创建RSS Feed

热门文章

  1. Apache ShardingSphere-JDBC基本教程
  2. growup怎么读_grow up是什么意思_grow up怎么读_grow up翻译_用法_发音_词组_同反义词_向上生长-新东方在线英语词典...
  3. H.266/VVC技术学习之帧内模式编码
  4. IPTV系统架构的分析与研究
  5. google 广告条代码
  6. PATA1052 Linked List Sorting (25 分)
  7. 海川QK1209 低压按键台灯充电 LED 驱动 IC- 昱灿电子
  8. MEM/MBA 复试准备(04-02)MEM专题
  9. c3p0,DBCP,Druid(德鲁伊)数据库连接池
  10. CSDN获取积分规则