首页 > 其他 > 详细

基础知识:单例设计模式

时间:2015-05-17 12:09:20      阅读:240      评论:0      收藏:0      [点我收藏+]

单例模式的特点

? ?

一个类只能有一个实例

自己创建这个实例

整个系统都要使用这个实例

? ?

单例模式的作用

? ?

单例模式主要保证在应用程序中一个类只有一个实例存在

在很多操作中,比如建立目录,数据库连接都需要用到这样的单线程操作,一些资源管理器常常设计成单例模式

? ?

单例模式的举例

? ?

window回收站

? ?

整个视窗系统中,回收站只能有一个实例,整个系统都使用这个唯一的实例,而且回收站自行提供自己的实例。因此回收站是单例模式

? ?

单例模式的分类

? ?

饿汉式单例

? ?

public class Singleton {

private Singleton(){}

//在自己内部定义自己一个实例

//注意这是private 只供内部调用

private static Singleton singleton = new Singleton();

//这里提供了一个供外部访问本class的静态方法,可以直接访问

public static Singleton getInstance(){

return singleton;

}

}

? ?

懒汉式单例

? ?

public class Singleton {

private static Singleton singleton;

private Singleton(){}

//这个方法比上面有所改进,不用每次都进行生成对象,只是第一次

//使用时生成实例,提高了效率!

public static synchronized Singleton getInstance(){

if(singleton==null){

singleton = new Singleton();

}

return singleton;

}

}

基础知识:单例设计模式

原文:http://www.cnblogs.com/keedor/p/4509305.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!