二十三中设计模式之:单例模式
Posted vbvb520
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二十三中设计模式之:单例模式相关的知识,希望对你有一定的参考价值。
单例模式通常用于保证系统中一个类只有一个单例。
单例模式分为三种:懒汉式、饿汉式、双重锁模式
例1:懒汉式
public class Singleton{
//1.构造方法私有化
private Singleton(){
}
//2.声明私有化实例
private static Singleton singleton = null;
//3.提供对外的公开的方法
public static Singleton getSingleton(){
if(singleton==null){
singleton = new Singleton();
//return singleton;
}
return singleton;
}
}
例2:饿汉式
public class Singleton{
//1.构造方法私有化
priavte Singleton(){
}
//2.声明类的实例
private static Singleton singleton = new Singleton();
//3.创建公开的方法
public static Singleton getSingleton(){
return singleton;
}
}
例3:双重锁模式
public class Singleton {
//1.构造方法私有化
private Singleton(){
}
//2.声明类的实例
private static Singleton singleton = null;
//3.创建公开的方法
public static Singleton getSingleton(){
synchronized(Singleton.class){
if(singleton==null){
singleton = new Singleton();
}
}
return singleton;
}
}
以上是关于二十三中设计模式之:单例模式的主要内容,如果未能解决你的问题,请参考以下文章
二十四种设计模式:单例模式(Singleton Pattern)