設計模式之一 單例模式(把構造函數變成私有)

單例模式的用途是很廣泛的,當你需要保證類的對象在內存中只要有一個的時候,就可以用到它。

這次是想要在緩衝的數據裏面,只保留一份數據,所以可以使用它。

 

  1. package dataserver.rmi.service; 
  2.  
  3. import java.util.ArrayList; 
  4. import java.util.List; 
  5. import dataserver.rmi.bean.Account; 
  6.  
  7. public class UserService { 
  8.  
  9.     private static UserService userService=null
  10.  
  11.     private UserService(){   
  12.     } 
  13.      
  14.      
  15.     public static UserService getInstance(){ 
  16.         if(userService==null){ 
  17.             userService=new UserService();   
  18.         } 
  19.         return userService;  
  20.     } 
  21.      

JAVA裏面,如果把類的構造函數定義爲私有Private,外部便無法通過new生成對象。

 實踐證明,這種懶漢的模式,在多線程的情況,是會產生問題的。可能會多次生成UserService的實例。所以,請大家還是用eager的模式。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章