下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、靜態(tài)代碼檢測工具CheckStyleCheckStyle是SourceForge下的一個項目,提供了一個幫助JAVA開發(fā)人員遵守某些編碼規(guī)范的工具。它能夠自動化代碼規(guī)范檢查過程,從而使得開發(fā)人員從這項重要但是枯燥的任務(wù)中解脫出來。CheckStyle檢驗的主要內(nèi)容 包括:lJavadoc注釋 l命名約定 l標(biāo)題 lImport語句 l體積大小l空白 l修飾符 l塊l代碼問題l類設(shè)計 l混合檢查(包活一些有用的比如非必須的System.out和printstackTrace)從上面可以看出,CheckStyle提供了大部分功能都是對于代碼規(guī)范的檢查,而沒有提供象PMD和Jalopy那么多的增強(qiáng)代
2、碼質(zhì)量和修改代碼的功能。但是,對于團(tuán)隊開發(fā),尤其是強(qiáng)調(diào)代碼規(guī)范的公司來說,它的功能已經(jīng)足夠強(qiáng)大。Checkstyle插件可以集成到Eclipse IDE中去,能確保Java代碼遵循標(biāo)準(zhǔn)代碼樣式。一、Checkstyle的安裝按照實驗指導(dǎo)書完成。二、checkstyle的使用1.檢查單個文件被檢查的代碼:import java.util.Scanner;public class Weather public static void main(String args) final int NUMBER_OF_DAYS = 10; final int NUMBER_OF_HOURS = 24; do
3、uble data = new doubleNUMBER_OF_DAYSNUMBER_OF_HOURS2; Scanner input = new Scanner(System.in); / Read input using input redirection from a file for (int k = 0; k NUMBER_OF_DAYS * NUMBER_OF_HOURS; k+) int day = input.nextInt(); int hour = input.nextInt(); double temperature = input.nextDouble(); doubl
4、e humidity = input.nextDouble(); dataday - 1hour - 10 = temperature; dataday - 1hour - 11 = humidity; / Find the average daily temperature and humidity for (int i = 0; i NUMBER_OF_DAYS; i+) double dailyTemperatureTotal = 0, dailyHumidityTotal = 0; for (int j = 0; j check code with checkstyle,檢查錯誤即可。
5、練習(xí)要求將輸入的代碼Weather類修改成為符合CheckStyle某種規(guī)則的編碼風(fēng)格。請在實驗報告中說明CheckStyle檢驗前的代碼和檢驗后的代碼區(qū)別,并分別列出修改的每條代碼是基于哪條規(guī)則做出的修改。修改后的代碼(每行錯誤的類型在這行代碼上方的注釋中):package checksytletest;import java.util.Scanner; /* * author sure * */public class Weather /缺少 Javadoc 。class def modifier 縮進(jìn)了4個縮進(jìn)符,應(yīng)為0個。 /class def lcurly 縮進(jìn)了4個縮進(jìn)符,應(yīng)為0個
6、。 /* * param args 字符串?dāng)?shù)組 */ public static void main(String args)/缺少 Javadoc 。 /必須匹配表達(dá)式: a-za-zA-Z0-9*$ final int nUMBEROFDAYS = 10; /method def 子元素縮進(jìn)了19個縮進(jìn)符,應(yīng)為8個 /必須匹配表達(dá)式: a-za-zA-Z0-9*$ 。 final int nUMBEROFHOURS = 24; /method def 子元素縮進(jìn)了19個縮進(jìn)符,應(yīng)為8個 double data = new doublenUMBEROFDAYSnUMBEROFHOURS2;
7、/- Resource leak: input is never closed /- method def 子元素縮進(jìn)了20個縮進(jìn)符,應(yīng) /為8個。 Scanner input = new Scanner(System.in); / Read input using input redirection from a file /- 第 62 個字符 應(yīng)位于新 /行。 /- for 縮進(jìn)了20個縮進(jìn)符,應(yīng) /為8個。 for (int k = 0; k nUMBEROFDAYS * nUMBEROFHOURS; k+) /for 子元素縮進(jìn)了22個縮進(jìn)符,應(yīng)為12個 int day = inpu
8、t.nextInt(); int hour = input.nextInt(); double temperature = input.nextDouble(); double humidity = input.nextDouble(); dataday - 1hour - 10 = temperature; dataday - 1hour - 11 = humidity; /for rcurly 縮進(jìn)了20個縮進(jìn)符,應(yīng)為8個 / Find the average daily temperature and humidity /for 縮進(jìn)了20個縮進(jìn)符,應(yīng)為8個。 /第 48 個字符 應(yīng)位于
9、新行。 for (int i = 0; i nUMBEROFDAYS; i+) /- 每一個變量的定義必須在它的聲明處,且在同 /一行。 /- for 子元素縮進(jìn)了22個縮進(jìn)符,應(yīng)為12個。 double dailyTemperatureTotal = 0; double dailyHumidityTotal = 0; /- for 縮進(jìn)了22個縮進(jìn)符,應(yīng)為 /12個。 /- 第 49 個字符 應(yīng)位于新行。 for (int j = 0; j nUMBEROFHOURS; j+) dailyTemperatureTotal += dataij0; dailyHumidityTotal += dataij1; / Display result /for 子元素縮進(jìn)了22個縮進(jìn)符,應(yīng)為12個。 System.out.println(Day + i + s average temperature is + dailyTemperatureTotal / nUMBEROFHOURS); System.out.println(Day + i + s average humidity is + dailyHumidityTotal / nUMBEROFHOURS); input.close(); 修
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 45040-2024床上用品乳膠制品透氣性試驗方法
- 易錯題17 文言文閱讀之?dāng)嗑漕}-當(dāng)斷不斷不該斷卻斷【高考語文】備戰(zhàn)2025年高考易錯題(新高考專用)含解析
- 愚人節(jié)活動策劃方案 (15篇)
- 參觀圓明園的觀后感
- 智能大廈綜合布線的工程設(shè)計方案
- 青春追夢人心共進(jìn)
- 多振源混疊的DAS目標(biāo)信號分離
- 智研咨詢發(fā)布:2024年中國美妝行業(yè)市場發(fā)展環(huán)境及前景研究報告
- DOPS基P-N-S協(xié)同阻燃劑的合成及其阻燃環(huán)氧樹脂的性能研究
- 二零二五版國際學(xué)校英語教師兼職外教聘請合同樣本3篇
- 房地產(chǎn)調(diào)控政策解讀
- 2024-2025學(xué)年八年級數(shù)學(xué)人教版上冊寒假作業(yè)(綜合復(fù)習(xí)能力提升篇)(含答案)
- 《AP內(nèi)容介紹》課件
- 醫(yī)生定期考核簡易程序述職報告范文(10篇)
- 安全創(chuàng)新創(chuàng)效
- 鋼結(jié)構(gòu)工程施工(杜紹堂 第五版) 課件全套 單元1-3 緒論、材料與連接- 鋼結(jié)構(gòu)施工安全
- 門診診療指南及規(guī)范
- 2023《住院患者身體約束的護(hù)理》團(tuán)體標(biāo)準(zhǔn)解讀PPT
- 國外文化消費研究述評
- 部編版語文四年級下冊第一單元 迷人的鄉(xiāng)村風(fēng)景 大單元整體教學(xué)設(shè)計
- 五年級行程問題應(yīng)用題100道
評論
0/150
提交評論