单例模式的用途是很广泛的,当你需要保证类的对象在内存中只要有一个的时候,就可以用到它。

这次是想要在缓冲的数据里面,只保留一份数据,所以可以使用它。

 

   
   
   
   
  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的模式。