码迷,mamicode.com
首页 > 编程语言 > 详细

【设计模式】Java设计模式第二课之单例模式

时间:2015-02-13 18:36:44      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:设计模式   java   单例模式   

单例模式是自打我知道设计模式这个名词之后,第一个听说的一个具体的设计模式.它的使用情景是有一些关键性资源只允许产生一个实例.如果有多个实例产生的话,就会对我们的实际情况产生许多干扰.


以下是我在看书的过程中总结的几个要点:

  • 确保一个类只有一个实例,并提供一个全局访问实例.
  • 在Java中实现单例模式需要一个私有的构造方法,一个静态方法和一个静态实例.
  • 确定在性能和资源上的限制,然后小心的选择适当的方案来实现单例,以解决多线程问题(我们必须认定所有的程序都是多线程的)
  • 如果使用了多个类加载器,可能导致单例失效,产生多个实例
  • 单例模式分为两种:懒汉模式和饿汉模式
  • 懒汉模式:加载类的时候比较快,但是运行时获取对象的速度比较慢,因为在创建单例类的时候没有创建类的对象.是线程不安全的.要在getInstance()方法上加上syncronized关键字,如果为了效率的话需要加上双重锁定
  • 饿汉模式:加载类的时候比较慢,但是运行时获取对象的速度比较快.因为在创建单例类的时候创建了类的对象.是线程安全的.

单例模式本身的代码量是很少的,但是代码量少并不代表它很简单,要想理解它的真正思想,还要多运用多思考.

【设计模式】Java设计模式第二课之单例模式

标签:设计模式   java   单例模式   

原文地址:http://blog.csdn.net/lchad/article/details/43796079

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!