码迷,mamicode.com
首页 > 其他好文 > 详细

单例模式:概述

时间:2017-09-08 18:14:18      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:单元素   理解   对象   枚举   有一个   如何   内部类   静态内部类   完全   

单例

 

  所谓单例模式,即是确保某一个类在整个系统中,只有一个实例。这是一种非常简单的设计模式,但是应用场景非常广泛,其优点非常明显,能够极大的减少系统对于同一个对象的创建和销毁,从而减少内存的开销。但是一定意义上来说,单例模式与我们熟知的单一职责原则有所冲突。

 

实现单例的方法

 

  要了解如何保证一个类始终只有一个实例,首先需要知道,一个类是怎么创建实例的:

  

  以上文章,总结了4种在Java中创建对象的方法,其中构造器是最常用的方法,而 Object 的 clone() 方法,其设计的意义与单例完全背道而驰,可以这么理解:如果一个类实现了 Cloneable 接口,那么设计者本身就不希望这个类是一个单例,所以就不做考虑了。另外一方面,在设计单例类时,要考虑到多线程并发访问的情况。

 

  我总结了5种实现单例模式的方法:

 

  • 饿汉模式
  • 懒汉模式
  • 静态内部类模式
  • 单元素枚举类模式
  • 登记模式

 

  以上5种方式,其各自的优劣,会在之后一一说明,欢迎补充和指正。

 

单例模式:概述

标签:单元素   理解   对象   枚举   有一个   如何   内部类   静态内部类   完全   

原文地址:http://www.cnblogs.com/jing-an-feng-shao/p/7495048.html

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