文章詳情頁(yè)
Effective java學(xué)習(xí)筆記3:用私有構(gòu)造函數(shù)強(qiáng)化不可實(shí)例化能力
瀏覽:52日期:2024-06-18 17:56:25
內(nèi)容: 有時(shí)候我們會(huì)編一些只含有靜態(tài)域和靜態(tài)方法的類.比如把操作原始類型和數(shù)組類型的方法集中起來:java.lang.Math,java.util.Arrays..或者把操作在特定接口之上的對(duì)象的方法集中起來,比如java.util.Collections.這個(gè)時(shí)候,不要試圖創(chuàng)建一個(gè)abstract 類來使之不可實(shí)例化,因?yàn)閍bstract類可以被繼承,最終被實(shí)例化.也不要試圖不給出構(gòu)造函數(shù),因?yàn)榧词惯@個(gè)類沒有構(gòu)造函數(shù)jvm也會(huì)給出一個(gè)默認(rèn)的構(gòu)造函數(shù).所以,可以給出一個(gè)顯示的私有構(gòu)造函數(shù),確保不可實(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ù)對(duì)象下一條:Effective java學(xué)習(xí)筆記2:使用私有構(gòu)造函數(shù)來強(qiáng)化單態(tài)性
相關(guān)文章:
1. Python中關(guān)于logging模塊的學(xué)習(xí)筆記2. vue學(xué)習(xí)筆記之動(dòng)態(tài)組件和v-once指令簡(jiǎn)單示例3. Python GUI編程學(xué)習(xí)筆記之tkinter控件的介紹及基本使用方法詳解4. PHP中的sprintf()函數(shù)的學(xué)習(xí)研究筆記5. 關(guān)于PHP程序員解決問題的能力6. asp知識(shí)整理筆記2(問答模式)7. asp知識(shí)整理筆記4(問答模式)8. 《CSS3實(shí)戰(zhàn)》筆記--漸變?cè)O(shè)計(jì)(一)9. js學(xué)習(xí)筆記之class類、super和extends關(guān)鍵詞10. Vue3使用JSX的方法實(shí)例(筆記自用)
排行榜
