Java語言實現常見Singleton單例模式舉例

2021-08-16 05:01:18 字數 1213 閱讀 2258

* 單例模式,餓漢式,執行緒安全

*/public static class singleton

public static singleton getinstance()

}

/**

* 單例模式,懶漢式,執行緒不安全

*/public static class singleton2

public static singleton2 getinstance()

return instance;

} }

/**

* 單例模式,懶漢式,執行緒安全,多執行緒環境下效率不高

*/public static class singleton3

public static synchronized singleton3 getinstance()

return instance;

} }

/**

* 單例模式,餓漢式,變種,執行緒安全

*/public static class singleton4

private singleton4()

public static singleton4 getinstance()

}

**

* 單例模式,使用靜態內部類,執行緒安全(推薦)

*/public static class singleton5

private static singleton5 getinstance()

}

/**

* 靜態內部類,使用列舉方式,執行緒安全(推薦)

*/public enum singleton6

}

/**

* 靜態內部類,使用雙重校驗鎖,執行緒安全(推薦)

*/public static class singleton7

public static singleton7 getinstance() }}

return instance;

} }

快速排序(java 語言實現)

package com.shan.quicksort 快速排序是由c.a.r.hoare 開發的,該演算法在陣列中選擇乙個稱為主元 pviot 的元素將陣列分為兩部分,是的第一部分的元素全部小於或等於主元,而第二部分的元素全部大於主元。對第一部分遞迴地使用快速排序,對第二部分遞迴地使用快速排序。au...

Go語言實現 常見排序演算法

氣泡排序 時間複雜度 o n 2 穩定性 穩定 氣泡排序 相鄰兩位交換,12交換,23交換,34交換,把最大的數放到最右邊 利用flag標記可以避免無效迴圈 func bubblesort arr int true表示序列已經有序,直接退出,不用繼續迴圈 false表示本次迴圈發生了交換,需要繼續判...

常見演算法的C語言實現

氣泡排序 bubble sort 就是一種交換排序,它的思想就是兩個元素進行比較,如果是反序則交換,直到沒有反序的元素為止。include 兩個數進行交換的函式 void swap int num1,int num2 氣泡排序的具體實現 void bubblesort int arr,int len...