文章詳情頁
Java程序的編碼規(guī)范(5)
瀏覽:86日期:2024-06-17 18:17:45
內(nèi)容: Java程序的編碼規(guī)范(5)作者:李小敏 本文選自:IBM DW中國 2002年08月21日 程序編寫規(guī)范● exit() exit除了在main中可以被調(diào)用外,其他的地方不應(yīng)該調(diào)用。因為這樣做不給任何代碼代碼機(jī)會來截獲退出。一個類似后臺服務(wù)地程序不應(yīng)該因為某一個庫模塊決定了要退出就退出。 ● 異常 申明的錯誤應(yīng)該拋出一個RuntimeException或者派生的異常。 頂層的main()函數(shù)應(yīng)該截獲所有的異常,并且打印(或者記錄在日志中)在屏幕上。 ● 垃圾收集 JAVA使用成熟的后臺垃圾收集技術(shù)來代替引用計數(shù)。但是這樣會導(dǎo)致一個問題:你必須在使用完對象的實例以后進(jìn)行清場工作。比如一個prel的程序員可能這么寫: ... { FileOutputStream fos = new FileOutputStream(projectFile); project.save(fos, 'IDE Project File'); } ... 除非輸出流一出作用域就關(guān)閉,非引用計數(shù)的程序語言,比如JAVA,是不能自動完成變量的清場工作的。必須象下面一樣寫: FileOutputStream fos = new FileOutputStream(projectFile); project.save(fos, 'IDE Project File'); fos.close(); ● Clone 下面是一種有用的方法: implements Cloneable public Object clone() { try { ThisClass obj = (ThisClass)super.clone(); obj.field1 = (int[])field1.clone(); obj.field2 = field2; return obj; } catch(CloneNotSupportedException e) { throw new InternalError('Unexpected CloneNotSUpportedException: ' + e.getMessage()); } } ● final 類 絕對不要因為性能的原因?qū)㈩惗x為 final 的(除非程序的框架要求)。 如果一個類還沒有準(zhǔn)備好被繼承,最好在類文檔中注明,而不要將她定義為 final 的。這是因為沒有人可以保證會不會由于什么原因需要繼承她。 ● 訪問類的成員變量 大部分的類成員變量應(yīng)該定義為 protected 的來防止繼承類使用他們。 注意,要用'int[] packets',而不是'int packets[]',后一種永遠(yuǎn)也不要用。 public void setPackets(int[] packets) { this.packets = packets; } CounterSet(int size) { this.size = size; } 編程技巧byte 數(shù)組轉(zhuǎn)換到 characters為了將 byte 數(shù)組轉(zhuǎn)換到 characters,你可以這么做: 'Hello world!'.getBytes(); 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
相關(guān)文章:
1. 如何使用PHP程序開發(fā)高效的WEB網(wǎng)絡(luò)系統(tǒng)2. Java程序員可能犯的3個常見SQL錯誤3. Java 理論與實踐: 用JMX檢測應(yīng)用程序4. Python PyQt5運(yùn)行程序把輸出信息展示到GUI圖形界面上5. Java程序員應(yīng)該知道的10個調(diào)試技巧6. Java面向?qū)ο蟪绦蛟O(shè)計:抽象類,接口用法實例分析7. PHP采集程序中常用的函數(shù)8. 淺議PHP程序開發(fā)中的模板選擇9. 黑馬程序員-java基礎(chǔ)知識+環(huán)境搭建和變量配置10. PHP程序員經(jīng)典面試回答,怎樣回答面試官的問題
排行榜
