第 1 頁:選擇題 |
第 5 頁:基本操作題 |
第 6 頁:簡單應(yīng)用題 |
第 7 頁:綜合應(yīng)用題 |
第 8 頁:答案及解析 |
16.D。解析:多線程是Java程序的并發(fā)機制,它能同步共享數(shù)據(jù)、處理不同的事件。
17.A。解析:為了充分利用資源,Java有一個系統(tǒng)級的線程,用來對內(nèi)存的使用進行跟蹤,它可以在系統(tǒng)空閑時對不用的內(nèi)存空間進行回收,從而使程序員從繁忙的內(nèi)存管理中解放出來。
18.A。解析:Java 2平臺包括:J2ME平臺、J2SE平臺和J2EE平臺。其中:J2ME是為嵌入式和移動設(shè)備提供的Java平臺;J2SE是面向企業(yè)級應(yīng)用與服務(wù)的綜合性標準開發(fā)平臺;J2EE是面向大型企業(yè)級用容器管理專用構(gòu)件的應(yīng)用平臺。而JDK 5.0是一個Java開發(fā)軟件包。
19.A。解析:在JDK中:javadoc.exe是文檔生成器,將Java源代碼和包以MML格式生成AP文檔;java.exe是Java解釋器;javap.exe是Java反匯編器;javaprof.exe是Java剖析工具,提供解釋器剖析信息。
20.C。解析:JPanel是Swing的中間容器;JTable是Swing中可編輯信息的構(gòu)件;JFrame是Swing的頂層容器。
21.B。解析:本題考查的是Java的基本數(shù)據(jù)類型及其運算。程序開始生成了一個字符型變量a和3個整型變量i、j、aa。而整型變量aa的初始值是a+i,其中a是一個字符型變量。如何進行加法運算呢?Java語言規(guī)定,char型數(shù)據(jù)可以自動轉(zhuǎn)換成int類型,轉(zhuǎn)換的結(jié)果就是該字符的ASCIl碼值。因此,整型變量aa的初始值為字符”h”的ASCIl碼值加上l00。如果記住h的ASCIl碼值是104,則直接就確定aa的初始值是204,選項B為正確答案。如果記不得h的ASCIl碼,題目中則給出提示。題目中說”輸出結(jié)果的第二行為bb=a”,也就是字符bb的值為字符a,bb的生成語句是char bb=(char)j,是把整型變量j的值強制轉(zhuǎn)換為字符型。同樣,把ASCIl碼值為j(97)所對應(yīng)的字符賦值給bb。顯然,字符a的ASCIl碼值為97,字符b的ASCIl碼值為98,依次類推,字符h的ASCIl碼為l04。因此,本題的正確答案是B。
22.C。解析:本題考查的是Java語言中運算符的特殊用法。相等比較運算符"= =",不僅可用于基本類型的數(shù)據(jù)之間的比較,還可以用于復(fù)合類型數(shù)據(jù)之間的比較。但是,對于復(fù)合類型數(shù)據(jù)的"= ="運算,其比較的目標是兩個操作數(shù)是否是同一個對象。如果需要比較兩個對象的值是否相同,則可以調(diào)用equals()方法。題目中函數(shù)equalsMethodl()的代碼非常簡單,首先生成兩個字符串對象sl和s2,然后輸出表達式"sl= =s2"的結(jié)果。根據(jù)上面介紹的相等比較運算符的用法,字符串對象sl和s2是復(fù)合類型數(shù)據(jù),因此表達式"sl= =s2"比較的是sl和s2是否同一個對象。顯然,sl和s2雖然具有相同的值,即"how are you",但它們是兩個不同的對象。因此,本題的正確答案是C。
23.D。解析:本題考查的是條件分支語句if-else。if-else根據(jù)判定條件的真假來執(zhí)行兩種操作中的一種。當條件為真時,執(zhí)行if語句后面的代碼塊;當條件為假時,執(zhí)行else后面的代碼塊。題目中的代碼段是一個if-else的嵌套語句,根據(jù)if-else語句的執(zhí)行過程來進行分析。當x的值為0時,布爾表達式"x= =0"的結(jié)果為真,就輸出”冠軍”;當x的值不為0時,則執(zhí)行else語句中的內(nèi)容。else語句中的代碼又是一個if-else語句,還是和上面一樣進行分析。當X的值不等于0且大于-3時,布爾表達式”x>-3”的結(jié)果為真,輸出"亞軍";當x的值不等于0且不大干-3,也就是X的值不等于0同時x的值小于等于-3時,則輸出"季軍"。經(jīng)過上述分析可知,要想輸出"季軍",x所滿足的條件為x!=O&x<=-3,但是當x<=-3時,x的值一定不會為0。所以,X所滿足的條件可以簡寫為x<=-3。因此,本題的正確答案為D。
24.C。解析:本題考查的是構(gòu)造方法的使用。Java語言中,構(gòu)造方法是一種特殊的方法,是為對象初始化操作編寫的方法,用它來定義對象的初始狀態(tài)。Java中的每個類都有構(gòu)造方法,它也是由方法名、參數(shù)和方法體組成的。構(gòu)造方法有如下特點:
構(gòu)造方法的名字必須與類名相同。
構(gòu)造方法不返回任何數(shù)據(jù),但不用void來聲明。
用戶不能直接調(diào)用構(gòu)造方法,必須通過關(guān)鍵字new自動調(diào)用。
構(gòu)造方法可由用戶在類中定義,默認時由Java語言自動生成。但它是個空方法,變量被賦予該數(shù)據(jù)類型的默認值。
在構(gòu)造方法實現(xiàn)中,可以進行方法重載,即定義多個構(gòu)造方法。重載構(gòu)造方法的目的是使類具有不同的初始值,為類對象的初始化提供方便。根據(jù)上述構(gòu)造方法的特點可知,本題選項C的說法是錯誤的。
25.D。解析:本題考查java.awt.event包中定義的適配器類。該包中定義的適配器類包括①ComponentAdapter構(gòu)件適配器;②ContainerAdapter容器適配器;③FocusAdapter焦點適配器;④MouseAdapter鼠標適配器;⑤KeyAdapter鍵盤適配器⑥WindowAdapter窗口適配器,由此可知本題答案為D。
26.D。解析:在Java中定義了兩種類型的流,字節(jié)型和字符型,這兩種流分別用4個抽象類表示:InputStream,OutputStream,Reader,Writer,其中InptutStream和OutStream表示字節(jié)流,Reader和Reader是表示字符流,所以字節(jié)輸入抽象類為InptutStream。
27.C。解析:本題考查Java的內(nèi)存讀寫。在java.io中,還提供了 ByteArrayInputStream、ByteArrayoutputStream和StringBufferInputStream類可直接訪問內(nèi)存,它們是InputStream和OutputStream的子類。用ByteArrayOutputStream可向字節(jié)數(shù)組寫入數(shù)據(jù);ByteArrayInputStream可從字節(jié)數(shù)組中讀取數(shù)據(jù)。
28.A。解析:本題考查Java的關(guān)系運算符。B中寫法不正確,C、D均為賦值運算符。
29.C。解析:本題考查線程的基本操作。Java中提供了interrupt方法用來中斷一個線程,當調(diào)用一個線程的interrupt方法時,即向該線程發(fā)送一個中斷請求。在調(diào)用線程的interrupt方法時,如果該線程由于調(diào)用了sleep方法或wait方法而正在處于阻塞狀態(tài),那么線程會拋出一個InterruptException異常。
30.C。解析:本題考查System類的基本知識。Systern類是一個final類,所有的方法都用類變量來調(diào)用,對System類不可能實例化。System類主要用來提供標準輸入/輸出和系統(tǒng)環(huán)境信息的訪問設(shè)置。而System類的屬性有:①public static final InputStream in;標準輸入;②publicstatic final OutputStream out;標準輸出;③pubhc static finalPrintStream err;標準錯誤輸出。
相關(guān)推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |