六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

Java咖啡館——編寫猜數字游戲(2)

[摘要]首先搭建Java程序框架。打開Eclipse,新建名為GuessNumberGame的項目,然后新建名為GuessNumber的Java類。別忘記給GuessNumber加上合適的javadoc。 ...

    

  首先搭建Java程序框架。打開Eclipse,新建名為GuessNumberGame的項目,然后新建名為GuessNumber的Java類。別忘記給GuessNumber加上合適的javadoc。

  第一步:隨機數的產生

  我們可以借助Java API提供的Random類來產生一個隨機數。

  首先在main函數中加入以下三行代碼:

// 新建一個隨機數產生器,然后生成一個0到99之間的整數。
Random random = new Random();
int number = random.nextInt(100);

  不出所料,Eclipse就像語文老師一樣,立即在錯誤語句處劃出紅線,把鼠標移動到紅線上,可以看到具體出錯信息(見圖2)。

Java咖啡館——編寫猜數字游戲(2)

 

  包(Package)的概念

  Java API中包含了極其豐富、類似于Random這樣由Sun預先定義好的類(Class,如果忘記相關概念,請參考第四篇連載?《品味第一杯咖啡》),與變量作用域的問題一樣,不同包中可以有同名同姓的類,如果沒有包的概念,就會遇到命名沖突問題。此外,包還能進行安全控制,你可以規定哪些類可以被包外部調用,哪些不可以。

  Random類是在java.util這個包中。可以手動在源程序頂部輸入import java.util.Random;語句來申明該程序將要使用java.util包中的Random類,然而有了Eclipse,就不用那么麻煩了?把光標移動到有紅色波浪線的Random上,然后按下Ctrl+Shift+M,Eclipse會自動幫你完成導入的工作了。此時保存一下源代碼,警告是不是消失了?希望你牢記這個快捷鍵的用法,在開發大型項目時,再好的腦子也無法牢記每個類所在的包的名字,有了Eclipse的鼎力相助,偷個懶也沒問題。

  語句翻譯

  第一句定義了一個類型是Random類的變量random(Java語言區分大小寫,所以Random和random是兩回事兒),并且用new操作符生成一個Random類的實例賦給random變量。還記得我們上期連載說到變量還有一種引用類型嗎?這就是一個例子。random變量實際上是一個參照,指向內存中用new操作符新建的Random類的實例。說起來很拗口,大多數情況下可以把random直接看做是一個Random類的實例,可以通過“random”加上“.操作符”來調用Random類的方法,比如用random.nextInt(100)來獲取一個0至99之間的隨機數。

  第二句語句定義一個整型變量number來保存隨機產生的整數,并且用直接初始化的方法把random產生的隨機數賦給number變量。

  第二步:標準輸入輸出

  標準輸入輸出(Standard I/O)是指可以被應用程序使用的信息流。比如,應用程序可以從標準輸入(Standard input)讀取數據,向標準輸出(Standard output)寫數據,把出錯信息發送到標準錯誤(Standard error)。通過輸入輸出,應用程序和應用程序之間可以被串聯起來使用。雖然標準輸入輸出是從UNIX發展出來的概念,在Windows中也廣泛應用,如果你熟悉DOS,這個概念自然不陌生。
猜數字游戲主要用到標準輸入,更明確一些,就是控制臺輸入。還記得我們經常使用System.out.println進行控制臺輸出嗎?相反,要從控制臺輸入,就需要用到System.in。它是一個純粹的輸入流,而猜數字游戲主要是通過控制臺獲取玩家的字符(特別是能夠支持多國語言的Unicode字符)輸入,我們需要把它包裝成一個BufferedReader實例來使用:

BufferedReader input = new BufferedReader(
new InputStreamReader(System.in));

  這時,input就是一個能處理來自控制臺輸入的、支持Unicode的、可以整行讀取的一個BufferedReader實例,比如能通過input.readLine()方法獲取玩家在控制臺整整一行的輸入了。

  第三步:異常

  正如阿甘的名言?Shit happens,程序中的金科玉律就是?一定會出錯。出錯并不可怕,關鍵看如何對待錯誤,有錯必究才善莫大焉。

  Java語言提供了異常(Exception)處理機制幫助程序員發現并處理異常。什么是異常呢?所謂異常,就是在程序執行過程中能干擾程序正常流程的事件。導致異常的原因很多,比如文件找不到、數組越界、除以零等。當異常出現時,一個異常對象將被自動生成并傳遞給Java“運行時環境”(runtime system),說得專業一點,就是拋出一個異常。異常對象包含了異常類型、程序運行狀態等信息。“運行時環境”得到異常對象后便打斷程序的正常流程,自動尋找一個專門處理該異常的代碼塊來解決問題。這樣的代碼塊稱作異常句柄(Exception Handler)。你可以在異常句柄中嘗試修復錯誤、重試或者報錯,或者實在無法進行下去的時候來個自我了斷。如果“運行時環境”找不到異常句柄,Java程序便會自行中斷。

  一個典型的異常處理是這個樣子的:

try {
statement(s);
} catch (exceptiontype1 name) {
statement(s);
} catch (exceptiontype2 name) {
statement(s);
} finally {
statement(s);
}

  其中:

  ★try語句括起來的語句可能拋出異常。try語句至少要搭配一個catch語句或finally語句,不能單獨使用。
  ★catch語句必須和一個try語句配套使用,根據異常類型(exception type)分別處理不同的異常。也就是說,Java有許多預先定義的異常,你可以通過多個catch語句對它們分門別類地處理。你還可以自己定義異常類型。如果try語句塊中沒有拋出異常,這里自然不會被執行。
  ★finally語句也必須和一個try語句配套使用,與catch語句不同,無論try語句塊中是否拋出異常,finally所包括的語句塊都會被執行





主站蜘蛛池模板: 亚洲 中文 欧美 日韩 在线 | 最新国产精品精品视频 | 日本欧美视频在线观看 | 青草久久久 | 亚洲国产欧洲精品路线久久 | 亚洲女人小便 | 又大又爽又粗免费视频 | 午夜性伦鲁啊鲁免费视频 | 色噜噜狠狠色综合欧洲selulu | 午夜激情视频在线观看 | 四虎在线精品免费高清在线 | 日本免费高清视频二区 | 在线观看免费日本 | 色小说亚洲 | 亚洲男人在线天堂 | 亚洲狠狠97婷婷综合久久久久 | 五月天国产 | 天天插日日干 | 青青青青手机在线视频观看国产 | 四虎成人精品免费影院 | 亚洲伦理在线观看 | 青青青爽在线视频免费观看 | 午夜精品久久久久久久99热下载 | 日本a级网站 | 天天天天天天操 | 欧洲激情网站 | 四色婷婷婷婷色婷婷开心网 | 中文字幕日韩精品一区口 | 日韩中文字幕免费观看 | 一级一级 a爱片免费视频 | 亚洲成年网| 五月婷丁香 | 婷婷色中文网 | 青春草视频免费观看 | 青青青免费高清在线观看视频在线 | 在线观看视频一区二区三区 | 亚洲国产成人精品区 | 亚洲免费网 | 青青在线视频免费观看 | 亚洲一区二区三区在线 | 色呦呦免费观看 |