有時候我們會編一些只含有靜態(tài)域和靜態(tài)方法的類.比如把操作原始類型和數(shù)組類型的方法集中起來:java.lang.Math,java.util.Arrays..或者把操作在特定接口之上的對象的方法集中起來,比如java.util.Collections. 這個時候,不要試圖創(chuàng)建一個abstract 類來使之不可實(shí)例化,因?yàn)閍bstract類可以被繼續(xù),最終被實(shí)例化.也不要試圖不給出構(gòu)造函數(shù),因?yàn)榧词惯@個類沒有構(gòu)造函數(shù)jvm也會給出一個默認(rèn)的構(gòu)造函數(shù). 所以,可以給出一個顯示的私有構(gòu)造函數(shù),確保不可實(shí)例化. Example: // Noninstantiable utility class - page 12 public class UtilityClass { // SupPRess default constrUCtor for noninstantiability private UtilityClass() { // This constructor will never be invoked } // ... // Remainder omitted }