一些工具類是不可以被實例化的,比如內部全是靜態(tài)成員的類
如java.lang.Math,java.util.Collections或者apache的各種util類
企圖將類做成抽象類來強制不可實例化是行不通的
這么做該類可以被子類化,并且該子類也可以被實例化,還會誤導其他人認為這是為了繼承而設計的類
我們只要讓該類提供只有一個構造方法,并且是私有無參的就可以做到了.
在java.lang.Math中
private Math() {}
一些工具類是不可以被實例化的,比如內部全是靜態(tài)成員的類
如java.lang.Math,java.util.Collections或者apache的各種util類
企圖將類做成抽象類來強制不可實例化是行不通的
這么做該類可以被子類化,并且該子類也可以被實例化,還會誤導其他人認為這是為了繼承而設計的類
我們只要讓該類提供只有一個構造方法,并且是私有無參的就可以做到了.
在java.lang.Math中
private Math() {}