建立單一例項,保證類在程式中只有乙個例項。
一句話:類載入的時候物件已經建立好了
public class student
private static student student = new student();
public static student getstudent()
public void say()
}
一句話:什麼時候要物件,就什麼時候建立物件
public class student
private static student student=null;
public synchronized static student getstudent()
return student;
} public void say()
}
分析:1. 執行緒安全問題怎麼產生的?(多執行緒訪問getstudent時可能某個程序獲取到的物件為null)
2. 執行緒安全問題怎麼解決的?(+關鍵字synchronized)
學生類package design03;
/** * 這是乙個學生類
* @author wangtengfei-ds
* */
public class student
/*** 在類的內部建立類的物件
*/private static student student = new student();
/*** 為外界提供獲取類的物件的方法
* @return student物件
*/public static student getstudent()
/*** 提供乙個物件的方法案例
*/public void say()
}
測試學生類package design03;
/** * 單例模式測試小程式
* @author wangtengfei-ds
* */
public class studenttest
}
學習設計模式 單例模式
適用於 優點 缺點 1.懶漢式 public class singleton public static synchronized singleton getinstance return uniqueinstance 2.餓漢式 public class singleton public stat...
設計模式學習 單例模式
單例模式是一種常用的軟體設計模式。通過單例模式可以保證系統中乙個類只有乙個例項而且該例項易於外界訪問,從而方便對例項個數的控制並節約系統資源。如果希望在系統中某個類的物件只能存在乙個,單例模式是最好的解決方案。1.單例模式特點 2.單例模式作用 3.單例模式種類 a.餓漢式 b.懶漢式 c.懶漢式 ...
學習設計模式( ) 單例模式
定義 確保乙個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。型別 建立類模式 單例模式應該是23種設計模式中最簡單的一種模式了。它有以下幾個要素 單例模式現在主流推薦第一種雙重檢查型。以前流行的有根據例項化物件時機的不同有分為兩種 一種是餓漢式單例,一種是懶漢式單例。餓漢式單例在單例類被載...