設計模式:單例模式
public class Singleton
{
//餓漢模式 //不用餓漢模式
private static Singleton singleton = new Singleton(); private static Singleton singleton;
private Singleton()
{
}
public static Singleton getInstance() public synchronized static Singleton getInstance()
{ {
//懶漢模式 //雙重鎖機制
if(singleton==null) if(singleton == null)
{ {
singleton = new Singleton(); synchronized(Singleton.class)
} {
return singleton(); if(singleton==null)
} {
} singleton = new Singleton();
}
}
}
return singleton;
}
//理論上不會有多魚
public class InnerClassSinleton()
{
pricate InnnerClassSingleton()
{
}
private static InnerClassSinleTon()
{
public static final InnerClassSingleton single = new InnerClassSingleton();
}
public static InnerClassSingleTon getInstance()
{
return InnerClassSingleTon.single;
}
}
public class RunTest()
{
public static void main(String args[])
{
Singleton s = Singleton.getInstace();
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/250846.html
標籤:Java相關
