一、立即載入模式(餓漢模式)
/**
* 立即載入模式(餓漢模式)
* * @author lzn
* */
public class singleone
/*** 該方法保證在多執行緒中獲取的是同乙個物件
* 該方法缺點是不能有其他例項變數,因為getinstance()不是同步方法,會引起執行緒安全問題
* * @return
*/public static singleone getinstance()
}
二、延遲載入模式(懶漢模式)
/**
* 延遲載入模式(懶漢模式)
* * @author lzn
* */
public class singleone
/*** 採用dcl雙檢查鎖機制,保證在多執行緒中獲取的是同乙個物件
* * @return
*/public static singleone getinstance()
}} return singleonedcl;
}}
三、靜態內建類實現單例模式
/**
* 靜態內建類實現單例模式
* * @author lzn
* */
public class singleone
private singleone()
/***
* @return
*/public static singleone getinstance()
}
四、利用靜態初始化器實現單例模式
/**
* 利用靜態初始化器實現單例模式
* * @author lzn
* */
public class singleone
private singleone()
/***
* @return
*/public static singleone getinstance()
}
五、使用enum列舉實現單例模式
/**
* 使用enum列舉實現單例模式
* * @author lzn
* */
public class singleone
public singleone getinstance() }
private singleone()
/***
* @return
*/public static singleone getinstance()
}
ios下比較完美的單例模式
網上關於ios單例模式實現的帖子已經很多了,有很多版本,裡面有對的也有不對的。我在使用過程中很難找到乙個比較完美的方法,索性自己寫乙個吧,經過專案驗證是比較合理的乙個版本。static prautologinview s sharedinstance nil prautologinview shar...
乙個比較完美的單例模式
單例模式基本上是每乙個程式設計師都能隨手寫的設計模式,牢記兩私一公的原則 即私有建構函式,私有靜態例項屬性,公共的獲取例項的靜態方法。遵循這個原則寫乙個,public class singleton public static singleton getinstance return instanc...
單例模式 從不好到完美
單例模式的定義 確保某乙個類只有乙個例項,而且這個類可以自行例項化,並向整個系統提供這個例項。最最簡單的方法 餓漢模式 public class singleton 通過該方法獲取例項物件 public static singleton getsingleton 類中的其它方法盡量是static p...