package singletonbao;
public class SingDemo {
public static void main(String[] args) {
/**
* 饿汉式和懒汉式的区别
*1。在多线程访问时,饿汉式不会创建对个对象,而懒汉式会创建
* 2。如果考虑线程安全问题 饿汉式
* 3.如果不考虑线程安全问题 懒汉式
*/
//单例模式 饿汉式
// Singleton s1=Singleton.getInstance();
// System.out.println(s1);
// System.out.println(Singleton.getInstance());
Singleton s1 = Singleton.instance;
System.out.println(s1);
}
}
//饿汉式
/**
class Singleton{
private static Singleton instance=new Singleton();
private Singleton(){ }
public static Singleton getInstance(){
return instance;
}
}
*/
//方式一 懒汉式
/* class Singleton{
private static Singleton instance;
private Singleton(){ }
public static Singleton getInstance(){
if ( instance ==null){
instance=new Singleton();
}
return instance;
}
}
*/
//方式三 简单
class Singleton {
public static Singleton instance = new Singleton();
private Singleton() {
}
}
设计模式之单例模式
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.