




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、=北京理工大學(xué)計(jì)算機(jī)科學(xué)技術(shù)學(xué)院20102011學(xué)年第一學(xué)期Java技術(shù)與應(yīng)用考試試題(A)班級(jí)學(xué)號(hào)姓名成績(jī) _ 說(shuō)明:(1)本次考試為開(kāi)卷考試,允許學(xué)生攜帶相關(guān)的書(shū)籍及其他紙面資料,但不得使用計(jì)算機(jī)、智能手機(jī)等電子設(shè)備。(2)考試時(shí)間為2小時(shí)。(3)簡(jiǎn)答題和編程題寫(xiě)在試卷后所附的答題紙上,標(biāo)明題號(hào)。(4)特設(shè)卷面整潔分,凡卷面不整潔導(dǎo)致代碼及文字難于識(shí)別者,扣除5分。(5)部分題目沒(méi)有標(biāo)準(zhǔn)答案,只要言之成理,均可給分。*一、判斷題(正確的描述打鉤,錯(cuò)誤的打叉,每題1分,共10分)1.一個(gè)Java源文件中只能定義一個(gè)公有類,并且類名必須與文件名一致。()2.通過(guò)在程序中引入“import ja
2、vax.swing.*;”語(yǔ)句,就可以使用javax.swing包中的所有類(包括其嵌套的子包中的類)。()3.J2SE的功能是J2ME的一個(gè)子集。()4.Java字節(jié)碼只有被裝入到內(nèi)存中之后,才能被執(zhí)行。()5.Swing是一套GUI組件,采用了新的思路設(shè)計(jì)Java應(yīng)用程序的界面,它完全地替換掉了原有的AWT。()6.在編程時(shí)編寫(xiě)過(guò)多的注釋,會(huì)使編譯之后生成的程序文件變大。()7.Java Applet可運(yùn)行于瀏覽器中,這意味著瀏覽器本身就可以直接執(zhí)行Applet程序。()8.JDK 5.0增加的枚舉類型(enum)是一個(gè)原始數(shù)據(jù)類型。( )9.Java規(guī)定所有的方法都必須放到某個(gè)類中,不存
3、在獨(dú)立于類的方法。()10.面向?qū)ο筌浖到y(tǒng)設(shè)計(jì)師們經(jīng)常用到的UML是一種編程語(yǔ)言。()二、簡(jiǎn)答題(請(qǐng)將答案寫(xiě)到答題紙上,注明題號(hào)。每題4分,共40分)1.現(xiàn)代編程語(yǔ)言有很多種分類方法,以下是我們常見(jiàn)的一種劃分方法:(1)“編譯型”編程語(yǔ)言:比如C,程序源碼必須經(jīng)過(guò)編譯才能運(yùn)行;(2)“解釋型”編程語(yǔ)言:這種類型的語(yǔ)言(比如早期的Basic)通常都擁有一個(gè)交互環(huán)境,用戶輸入一句代碼計(jì)算機(jī)就執(zhí)行一句代碼。 Java屬于上述哪種類型?如果你認(rèn)為Java不屬于上述任何一種類型,那么它是不是屬于另外一種編程語(yǔ)言類型?2.Java中有兩個(gè)關(guān)鍵字:void和null,它們有什么區(qū)別?3.簡(jiǎn)述“類(clas
4、s)”、“類庫(kù)(class library)”、“包(package)”、“jar文件”這四個(gè)概念間的聯(lián)系。4.面向?qū)ο蟮某绦蛟谶\(yùn)行時(shí)會(huì)創(chuàng)建多個(gè)對(duì)象,這些對(duì)象之間通常可以相互“發(fā)送消息”,談?wù)勀銓?duì)“對(duì)象之間發(fā)送消息”這句話的理解,并編寫(xiě)幾句Java示例代碼展示對(duì)象之間發(fā)送消息的具體編程實(shí)現(xiàn)方法。5.加法運(yùn)算符“+”可以施加于原始數(shù)值類型(比如int)的變量,但我們發(fā)現(xiàn)一些對(duì)象類型(比如Integer)的變量,也支持“+”運(yùn)算: Integer v1 = 100; Integer v2 = 200; System.out.println(v1 + v2); /輸出:300這看上去好象Intege
5、r類型重載了“+”運(yùn)算符,一些編程語(yǔ)言比如C+可以重載運(yùn)算符,但Java本身并不支持這一特性。依你的理解或猜測(cè),Java采用什么方法處理兩個(gè)Integer對(duì)象直接“+”的語(yǔ)句?6.在一個(gè)很大的循環(huán)(比如循環(huán)次)中,如果需要進(jìn)行大量字符串的連接操作,通常人們會(huì)使用StringBuffer(或StringBuilder)而不是String類型,請(qǐng)解釋這么做的理由。7.現(xiàn)有兩個(gè)長(zhǎng)度不同的數(shù)組: int arr1 = new int10; int arr2 = new int100;那么以下語(yǔ)句能通過(guò)編譯嗎? arr1 = arr2; 如果你認(rèn)為可以通過(guò)編譯,得到這個(gè)結(jié)論的依據(jù)是什么?如果不能通過(guò)編譯
6、,你認(rèn)為其原因是什么?8.請(qǐng)看以下代碼: double d1 = 100.1; double d2 = 1001/10; System.out.println(d1 = d2); /輸出:false明明d1與d2是相等的,為什么程序運(yùn)行時(shí)會(huì)輸出一個(gè)讓人意外的結(jié)果:false?9.當(dāng)使用多個(gè)catch語(yǔ)句捕獲多個(gè)異常時(shí),Java規(guī)定捕獲Exception的catch語(yǔ)句必須排在最后,如下所示: try catch(ClassCastException ex) catch(NumberFormatException ex) catch(Exception ex) /此句必須放在最后! 為什么會(huì)有這
7、個(gè)限制?談?wù)勀愕睦斫狻?0.請(qǐng)看以下示例代碼: String s1 = Hello; String s2 = Hello;System.out.println(s1 = s2); /輸出:true String s3 = new String(Hello); String s4 = new String(Hello);System.out.println(s3 = s4); /輸出:false請(qǐng)解釋一下為什么上述代碼中“System.out ”兩句代碼輸出完全不同的結(jié)果?三編程題(共50分)說(shuō)明:(1)編程題共分為兩組:簡(jiǎn)單編程題與綜合編程題。(2)請(qǐng)?jiān)谠嚲砗笏降拇痤}紙上書(shū)寫(xiě)程序代碼,注明題
8、號(hào)。(3)要求代碼書(shū)寫(xiě)規(guī)范,并添加相應(yīng)的注釋。第1部分:簡(jiǎn)單編程題(每題5分,共35分)1.編寫(xiě)一個(gè)程序,用戶輸入任何一個(gè)字符串之后,反轉(zhuǎn)輸出其結(jié)果。其運(yùn)行結(jié)果如下所示:請(qǐng)輸入一個(gè)字串:我在學(xué)習(xí)Java程序設(shè)計(jì)您輸入了:計(jì)設(shè)序程avaJ習(xí)學(xué)在我2.編寫(xiě)一個(gè)方法,它接收一個(gè)int數(shù)組作為參數(shù),外界只需調(diào)用一次這個(gè)方法,可以馬上得到這個(gè)數(shù)組的最大值、最小值和平均值信息。3.請(qǐng)編寫(xiě)一個(gè)方法,其聲明如下: public static int getRandomizeNumbers(int begin, int end, int count)此方法將生成一個(gè)數(shù)組,包容count個(gè)begin,end)范圍
9、內(nèi)的隨機(jī)整數(shù).4.數(shù)學(xué)中,一個(gè)復(fù)數(shù)包容著一個(gè)實(shí)部(Real)和一個(gè)虛部(Imaginary)。請(qǐng)?jiān)O(shè)計(jì)一個(gè)Complex類,它的實(shí)例代表一個(gè)復(fù)數(shù),并且用戶可以這樣使用它: /創(chuàng)建一個(gè)實(shí)部為3,虛部為4的復(fù)數(shù) Complex obj = new Complex(3,4); /Complex對(duì)象具備按照數(shù)學(xué)中復(fù)數(shù)的習(xí)慣表示形式輸出的能力。 System.out.println(obj); /輸出:3+4i5.A、B、C是三個(gè)類,它們之間有著以下的組合關(guān)系(圖1):圖1請(qǐng)編寫(xiě)一個(gè)示例程序,這個(gè)程序可以完成對(duì)A對(duì)象的深復(fù)制(deep copy)。6.我們可以調(diào)用Integer.parseInt()方法將
10、一個(gè)字串轉(zhuǎn)換為int類型,但當(dāng)要轉(zhuǎn)換的字串不是一個(gè)有效的數(shù)字時(shí)(比如“a123”),此方法會(huì)拋出一個(gè)NumberFormatException。你需要編寫(xiě)一個(gè)程序,當(dāng)程序運(yùn)行時(shí)讓用戶從鍵盤(pán)上輸入一個(gè)字串,代表考試成績(jī),然后調(diào)用Integer.parseInt()方法將其轉(zhuǎn)換為int類型,并給出是否通過(guò)的提示:請(qǐng)輸入您的考試成績(jī):76恭喜您通過(guò)了考試!由于無(wú)法控制用戶的輸入,因此可能出現(xiàn)以下兩種出錯(cuò)情況:(1)用戶輸入了一個(gè)無(wú)法轉(zhuǎn)換為int類型的字符串。(2)用戶輸入的數(shù)字不在0,100區(qū)間內(nèi)。請(qǐng)?jiān)O(shè)計(jì)一個(gè)自定義的異常類InvalidScoreException,當(dāng)出現(xiàn)上述出錯(cuò)情景時(shí)能拋出此異常對(duì)
11、象。要求程序運(yùn)行時(shí),對(duì)用戶的錯(cuò)誤輸入能給以明確的提示。7.設(shè)計(jì)一個(gè)類,實(shí)現(xiàn)以下的狀態(tài)機(jī)(圖2):圖2提示:圖2說(shuō)明,當(dāng)使用new關(guān)鍵字創(chuàng)建此類對(duì)象時(shí),對(duì)象居于Created狀態(tài)(這是初始狀態(tài)),這時(shí),調(diào)用對(duì)象的open()方法,對(duì)象轉(zhuǎn)換到Opened狀態(tài),再調(diào)用對(duì)象的close()方法,對(duì)象轉(zhuǎn)入“Closed”狀態(tài),這是終止?fàn)顟B(tài)。第2部分:綜合編程題(15分)一個(gè)圖書(shū)管理系統(tǒng)的面向?qū)ο笤O(shè)計(jì)方案如圖3所示:圖3 Book代表書(shū),有“Name(書(shū)名)”、“Author(作者名)”、“Price(單價(jià))”和“IsBorrowed(是否被借出)”四個(gè)屬性。類Library代表圖書(shū)館,其內(nèi)部字段book
12、s用于保存圖書(shū)館中所有的書(shū)。它的FindBook()方法依據(jù)書(shū)名查找同名的書(shū)(可能有多本)。另一個(gè)GetAllBooks()方法獲取館藏所有書(shū)的詳細(xì)信息。類Reader代表讀者,Name字段代表其姓名,讀者可以“ReturnBook(還書(shū))”和“BorrowBook(借書(shū))”。請(qǐng)編程完成以下工作:1.用Java編程實(shí)現(xiàn)上述3個(gè)類。(12分)2.在main()方法內(nèi)書(shū)寫(xiě)以下測(cè)試代碼:(3分)(1)創(chuàng)建一個(gè)Library類的實(shí)例myLittleLibrary,其中預(yù)存有以下3本書(shū): Java程序設(shè)計(jì),張三著,45元 Java核心技術(shù),李四著,50元 Java程序設(shè)計(jì),王五著,38元(2)顯示圖書(shū)館中所有圖書(shū)的信息,輸出樣例如下: Java程序設(shè)計(jì),張三著,45元,可借 Java核心技術(shù),李四著,50元,可借 Java程序設(shè)計(jì),王五著,38元,未還(3)創(chuàng)建一個(gè)Reader類的實(shí)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 雇主品牌在招聘中的重要性計(jì)劃
- 其他債務(wù)轉(zhuǎn)讓合同范例
- 貨物分類與標(biāo)識(shí)標(biāo)準(zhǔn)計(jì)劃
- 加強(qiáng)客戶關(guān)系管理的策略計(jì)劃
- 班級(jí)活動(dòng)反饋機(jī)制的建立計(jì)劃
- 美好的班級(jí)文化建設(shè)計(jì)劃
- 前臺(tái)文員對(duì)外溝通能力提升方案計(jì)劃
- 居易國(guó)際品牌視覺(jué)形象規(guī)范手冊(cè)
- 第 3 單元 第5 章第 2 節(jié) 呼吸作用2023-2024學(xué)年七年級(jí)上冊(cè)生物同步教學(xué)設(shè)計(jì)(北師大版)
- 2025年湘潭貨運(yùn)員初級(jí)考試題庫(kù)
- DB13T 2801-2018 水利工程質(zhì)量監(jiān)督規(guī)程
- 四年級(jí)上冊(cè)第四單元讓生活多一些綠色道德與法治教學(xué)反思11變廢為寶有妙招
- JJG(交通)096-2009 水泥膠砂流動(dòng)度測(cè)定儀檢定規(guī)程-(高清現(xiàn)行)
- 嗓音(發(fā)聲)障礙評(píng)定與治療
- Q∕SY 05262-2019 機(jī)械清管器技術(shù)條件
- 耳鼻咽喉頭頸外科學(xué)耳鼻咽喉應(yīng)用解剖
- 最新人音版音樂(lè)二年級(jí)下冊(cè)全冊(cè)教案
- 航空航天概論(課堂PPT)
- 新改版教科版六年級(jí)下冊(cè)科學(xué)全冊(cè)知識(shí)點(diǎn)歸納 (超全)
- 英語(yǔ)的起源與發(fā)展(課堂PPT)
- 二房東租房合同范文
評(píng)論
0/150
提交評(píng)論