文章詳情頁
Effective java學(xué)習(xí)筆記3:用私有構(gòu)造函數(shù)強化不可實例化能力
瀏覽:107日期:2024-06-18 17:56:25
內(nèi)容: 有時候我們會編一些只含有靜態(tài)域和靜態(tài)方法的類.比如把操作原始類型和數(shù)組類型的方法集中起來:java.lang.Math,java.util.Arrays..或者把操作在特定接口之上的對象的方法集中起來,比如java.util.Collections.這個時候,不要試圖創(chuàng)建一個abstract 類來使之不可實例化,因為abstract類可以被繼承,最終被實例化.也不要試圖不給出構(gòu)造函數(shù),因為即使這個類沒有構(gòu)造函數(shù)jvm也會給出一個默認(rèn)的構(gòu)造函數(shù).所以,可以給出一個顯示的私有構(gòu)造函數(shù),確保不可實例化.Example:// Noninstantiable utility class - page 12public class UtilityClass { // Suppress default constructor for noninstantiability private UtilityClass() { // This constructor will never be invoked } // ... // Remainder omitted} Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd
標(biāo)簽:
Java
上一條:Effective java學(xué)習(xí)筆記4:避免創(chuàng)建重復(fù)對象下一條:Effective java學(xué)習(xí)筆記2:使用私有構(gòu)造函數(shù)來強化單態(tài)性
相關(guān)文章:
1. Python學(xué)習(xí)筆記之裝飾器2. Python測試框架:pytest學(xué)習(xí)筆記3. asp知識整理筆記2(問答模式)4. 《javascript設(shè)計模式》學(xué)習(xí)筆記五:Javascript面向?qū)ο蟪绦蛟O(shè)計工廠模式實例分析5. PHP解決問題的能力是毋庸置疑的6. Spring Security學(xué)習(xí)筆記(一)7. PHP PDO 學(xué)習(xí)筆記8. PHP與MYSQL交互函數(shù)表學(xué)習(xí)筆記9. asp知識整理筆記1(問答模式)10. 《javascript設(shè)計模式》學(xué)習(xí)筆記七:Javascript面向?qū)ο蟪绦蛟O(shè)計組合模式詳解
排行榜
