黑馬程序員-單例設計模式

----------- android培訓java培訓、java學習型技術博客、期待與您交流! -----------

/*

Runtime對象
該類並沒有提供構造函數。
說明不可以new對象。那麼會直接想到該類中的方法都是靜態的。
發現該類中還有非靜態方法。
說明該類肯定會提供了方法獲取本類對象。而且該方法是靜態的,並返回值類型是本類類型。


由這個特點可以看出該類使用了單例設計模式完成。

該方式是static Runtime getRuntime();
*/
class  RuntimeDemo
{
public static void main(String[] args) throws Exception
{
Runtime r = Runtime.getRuntime();
Process p = r.exec("notepad.exe  SystemDemo.java");

//Thread.sleep(4000);
//p.destroy();


}

}

/*
單例設計模式。

目的:
希望對象只創建一個實例,並且提供一個全局的訪問點。

*/
//餓漢式。
/*
class Single
{
private static final Single s = new Single();
private Single(){}
public static Single getInstance()
{
return s;
}
}
*/
//懶漢式
class Single
{
private static Single s = null;
private Single(){}
public static  Single getInstance()
{
if(s==null)
{
synchronized(Single.class)
{
if(s==null)
//--->A;
s = new Single();
}
}
return s;
}
}
class SingleDemo 
{
public static void main(String[] args) 
{
System.out.println("Hello World!");
}
}

----------- android培訓java培訓、java學習型技術博客、期待與您交流! -----------

發佈了27 篇原創文章 · 獲贊 1 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章