Java Instance return model note!

1. We have a class and define a static method of  getInstance()
 
public   class  GenDarwinGlobal  extends  GenDarwinGlobalHelper
{
    
/**
     * Script Name   : <b>GenDarwinGlobal</b>
     * Generated     : <b>Mar 31, 2011 1:16:48 AM</b>
     * Description   : Functional Test Script
     * Original Host : WinNT Version 5.2  Build 3790 (S)
     * 
     * 
@since   2011/03/31
     * 
@author  dwei
     
*/
    
public   void  testMain(Object[] args) 
    {
        
//  TODO Insert code here
    }
    
public    static  GenDarwinGlobal getInstance()
    {
        
return   new  GenDarwinGlobal();
    }
}
 
2. Compare these code line, the getInstance sequence will get failed return because it has two new instance belong to different object.
//         FucLib.GenevaFuc.GenDarwinGlobal.getInstance().openBuyTransaction();
    
//     FucLib.GenevaFuc.GenDarwinGlobal.getInstance().ClickQuery();
        
        
        FucLib.GenevaFuc.GenDarwinGlobal oGD 
=    new  FucLib.GenevaFuc.GenDarwinGlobal(); 
        oGD.openBuyTransaction();
        oGD.ClickQuery();
3. Also we can using this method to resolve this problem in the instance code .
 
private   static  GenDarwinGlobal instance  =   null ;
public   static   synchronized  GenDarwinGlobal getInstance()
{
   
if ( instance  ==   null )
   {
    instance 
=   new  GenDarwinGlobal();
   }
    
return  instance;
}
 
 

你可能感兴趣的:(instance)