JavaSE 23种 设计模式 之 单例模式,javase23种
分享于 点击 29567 次 点评:46
JavaSE 23种 设计模式 之 单例模式,javase23种
package com.atweihai.javase;
/**
* JavaSE23种 设计模式 之 单例模式
* 饿汉式
*/
public class Singleton {
private Singleton(){}
private static Singleton singleton=new Singleton();
public static Singleton getInstance(){
return singleton;
}
}
/**
*懒汉式:线程不安全
*/
class Singleton1{
private Singleton1(){}
private static Singleton1 singleton1=null;
public static Singleton1 getInstance(){
if(singleton1==null){
singleton1=new Singleton1();
}
return singleton1;
}
}
/**
* 懒汉式:线程安全 “双重检查锁”
*/
class Singleton2{
private Singleton2(){}
private static Singleton2 singleton2=null;
public static Singleton2 getInstance(){
if(singleton2==null){
synchronized (Singleton2.class) {
if(singleton2==null){
singleton2=new Singleton2();
}
}
}
return singleton2;
}
}
相关文章
- 暂无相关文章
用户点评