第一個,就是單例模式,雖然分為"懶漢模式"和"醉漢模式",但在jvm中有且只有這樣的一個對象!這樣才能稱為單例(詳細請參照設計模式)
第二個,工具類,建義工具類用private,因為工具類里的行為和屬性都是靜態,所以jdk希望我們不要實例化,只需要通過類名來訪問。如果用了private就不能繼承了,
private構造方法與final修飾類的區別 :
private,不可以被繼承,不能創建實例。
final,不可以被繼承,可以創建實例。
把構造方法聲明為private的理由(摘抄):
1、這個類中僅僅包含供其它類調用的靜態方法,沒有實例方法。這意味著當某個類想要調用該類中的方法時,無需創建該類的實例,即不會觸及到該類的構造方法。
2、禁止這個類被繼承。
3、這個類需要把自身實現的細節封裝起來,不允許其它程序通過new語句來創建這個類的實例。這個類向其他程序提供了獲取自身實例的靜態方法,這種方法稱為靜態工廠方法。
如果在JVM中還有那些類使用到private構造方法,請告訴我,我好科普下!
新聞熱點
疑難解答