Effective Java之通过私有构造器强化不可实例化能力(四)
生活随笔
收集整理的這篇文章主要介紹了
Effective Java之通过私有构造器强化不可实例化能力(四)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
比如很多工具類,成員都是靜態的,你寫這個類的原因是想拿來直接用,而不需要實例化的
但是在缺少顯示構造函數的時候,編譯器會給你默認生成一個構造函數,這樣這個類就有可能實例化
企圖將類做成抽象類來強制該類不被實例化,這是行不通的(因為子類可以實例化,而且你寫這個類不又不是用來繼承的)
將構造器設置為private來解決問題:
public class UtilityClass {// Suppress default constructor for noninstantiability//錯誤是為了防止有人調用構造函數private UtilityClass() {throw new AssertionError();} }總結
以上是生活随笔為你收集整理的Effective Java之通过私有构造器强化不可实例化能力(四)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Effective Java之用私有构造
- 下一篇: Effective Java之避免创建不