- 計算機二級考試JAVA模擬試題庫一答案及解析 推薦度:
- 相關(guān)推薦
2015年計算機二級考試JAVA模擬試題庫(二)答案及解析
一、選擇題

1.D。解析:算法的時(shí)間復雜度和空間復雜度是從不同的角度來(lái)衡量算法的執行情況的,它們之間沒(méi)有內在聯(lián)系。
2.B。解析:先進(jìn)的軟件開(kāi)發(fā)工具和環(huán)境對提高開(kāi)發(fā)人員工作效率是至關(guān)重要的。
3.D。解析:程序設計語(yǔ)言的基本成分有:數據成分,用于描述程序所涉及的數據;運算成分,用于描述程序中所包含的運算;控制成分,用于描述程序中所包含的控制;傳輸成分,用于表達程序中數據的傳輸。
4.C。解析:對線(xiàn)性表進(jìn)行順序查找時(shí),從表中的第一個(gè)元素開(kāi)始,將給定的值與表中逐個(gè)元素的關(guān)鍵字進(jìn)行比較,直到兩者相符,查找到所要找的元素為止。在最壞情況
下,要查找的元素是表的最后一個(gè)元素或查找失敗,這兩種情況都需要將這個(gè)元素與表中的所有元素進(jìn)行比較,因此比較次數為n。
5.D。解析:對二叉樹(shù)的前序遍歷是指:先訪(fǎng)問(wèn)根結點(diǎn),然后訪(fǎng)問(wèn)左子樹(shù),最后訪(fǎng)問(wèn)右子樹(shù),并且,在訪(fǎng)問(wèn)左、右子樹(shù)時(shí),先訪(fǎng)問(wèn)根結點(diǎn),再依次訪(fǎng)問(wèn)其左、右子樹(shù)。
6.C。解析:面向對象的程序設計是用對象模擬問(wèn)題領(lǐng)域中的實(shí)體,各對象之間相對獨立,相互依賴(lài)性小,通過(guò)消息來(lái)實(shí)現對象之間的相互聯(lián)系。
7.B。解析:基于軟件工程的目標,軟件工程的理論和技術(shù)性研究的內容主要包括軟件開(kāi)發(fā)技術(shù)和軟件工程管理。
8.D。解析:在面向對象方法中,對象之間通過(guò)消息進(jìn)行通信。消息中只包含傳遞者的要求,但并不指示接受者應該怎么完成這些處理。
9.C。解析:軟件調試技術(shù)包括強行排錯法、回溯法和原因排除法。邊界值分析、錯誤推斷都是黑盒測試的方法。
10.C。解析:數據庫系統(DBS)由數據庫(DB)、數據庫管理系統(DBMS)、數據庫管理員、硬件平臺和軟件平臺5個(gè)部分組成,因此DB和DBMS都是DBS的組成部分。
11.D。解析:高級語(yǔ)言是一類(lèi)人工設計的語(yǔ)言,因為它對具體的算法進(jìn)行了描述,所以又稱(chēng)為算法語(yǔ)言。它是面向程序設計獨立于計算機的硬件。目前,計算機常用的高級語(yǔ)言有:BASIC語(yǔ)言、FORTRAN語(yǔ)言、COBOL語(yǔ)言、PASCAL語(yǔ)言、C語(yǔ)言、PROLOG語(yǔ)言、而當前流行的,面向對象的程序設計語(yǔ)言有C++和用于網(wǎng)絡(luò )環(huán)境的程序設計語(yǔ)言Java等。
12.B。解析:假設地址總線(xiàn)有n條,內存的尋址范圍是2n。
13.B。解析:廣域網(wǎng)是指遠距離的計算機互聯(lián)網(wǎng)絡(luò ),分布范圍可達幾千千米乃至上萬(wàn)千米甚至跨越國界、州界、遍及全球范圍。局域網(wǎng)是指一個(gè)局部區域中的、近距離的計算機互聯(lián)網(wǎng)絡(luò ),通常采用有線(xiàn)方式連接,分布范圍從幾百米到幾千米。例如,一座大樓內或相鄰的幾座樓之間的互聯(lián)網(wǎng)絡(luò )。一個(gè)單位、學(xué)校內部的網(wǎng)絡(luò )多為局域網(wǎng)。
14.A。解析:一般人們將加密前的文件稱(chēng)為明文,而加密后的文件稱(chēng)為密文,因此加密的目的就是將明文變?yōu)槊芪。而反過(guò)來(lái)將密文變?yōu)槊魑牡倪^(guò)程則稱(chēng)為解密。
15.A。解析:每臺直接連接到Internet上的計算機、路由器都必須有唯一的IP地址。IP地址是Internet賴(lài)以工作的基礎。Internet中的計算機與路由器的IP地址采用分層結構,它是由網(wǎng)絡(luò )地址與主機地址兩部分組成。對于C類(lèi)地址,其網(wǎng)絡(luò )地址空間長(cháng)度為21位,主機地址空間長(cháng)度為8位,C類(lèi)I P地址范圍從:l92.0.0.0~223.255.255.255。主機名與它的IP地址一一對應,因此在Internet上訪(fǎng)問(wèn)一臺主機既可以使用它的主機名,也可以使用它的I P地址。
16.D。解析:多線(xiàn)程是Java程序的并發(fā)機制,它能同步共享數據、處理不同的事件。
17.A。解析:為了充分利用資源,Java有一個(gè)系統級的線(xiàn)程,用來(lái)對內存的使用進(jìn)行跟蹤,它可以在系統空閑時(shí)對不用的內存空間進(jìn)行回收,從而使程序員從繁忙的內存管理中解放出來(lái)。
18.A。解析:Java 2平臺包括:J2ME平臺、J2SE平臺和J2EE平臺。其中:J2ME是為嵌入式和移動(dòng)設備提供的Java平臺;J2SE是面向企業(yè)級應用與服務(wù)的綜合性標準開(kāi)發(fā)平臺;J2EE是面向大型企業(yè)級用容器管理專(zhuān)用構件的應用平臺。而JDK 5.0是一個(gè)Java開(kāi)發(fā)軟件包。
19.A。解析:在JDK中:javadoc.exe是文檔生成器,將Java源代碼和包以MML格式生成AP文檔;java.exe是Java解釋器;javap.exe是Java反匯編器;javaprof.exe是Java剖析工具,提供解釋器剖析信息。
20.C。解析:JPanel是Swing的中間容器;JTable是Swing中可編輯信息的構件;JFrame是Swing的頂層容器。
21.B。解析:本題考查的是Java的基本數據類(lèi)型及其運算。程序開(kāi)始生成了一個(gè)字符型變量a和3個(gè)整型變量i、j、aa。而整型變量aa的初始值是a+i,其中a是一個(gè)字符型變量。如何進(jìn)行加法運算呢?Java語(yǔ)言規定,char型數據可以自動(dòng)轉換成int類(lèi)型,轉換的結果就是該字符的ASCIl碼值。因此,整型變量aa的初始值為字符”h”的ASCIl碼值加上l00。如果記住h的ASCIl碼值是104,則直接就確定aa的初始值是204,選項B為正確答案。如果記不得h的ASCIl碼,題目中則給出提示。題目中說(shuō)”輸出結果的第二行為bb=a”,也就是字符bb的值為字符a,bb的生成語(yǔ)句是char bb=(char)j,是把整型變量j的值強制轉換為字符型。同樣,把ASCIl碼值為j(97)所對應的字符賦值給bb。顯然,字符a的ASCIl碼值為97,字符b的ASCIl碼值為98,依次類(lèi)推,字符h的ASCIl碼為l04。因此,本題的正確答案是B。
22.C。解析:本題考查的是Java語(yǔ)言中運算符的特殊用法。相等比較運算符"= =",不僅可用于基本類(lèi)型的數據之間的比較,還可以用于復合類(lèi)型數據之間的比較。但是,對于復合類(lèi)型數據的"= ="運算,其比較的目標是兩個(gè)操作數是否是同一個(gè)對象。如果需要比較兩個(gè)對象的值是否相同,則可以調用equals()方法。題目中函數equalsMethodl()的代碼非常簡(jiǎn)單,首先生成兩個(gè)字符串對象sl和s2,然后輸出表達式"sl= =s2"的結果。根據上面介紹的相等比較運算符的用法,字符串對象sl和s2是復合類(lèi)型數據,因此表達式"sl= =s2"比較的是sl和s2是否同一個(gè)對象。顯然,sl和s2雖然具有相同的值,即"how are you",但它們是兩個(gè)不同的對象。因此,本題的正確答案是C。
23.D。解析:本題考查的是條件分支語(yǔ)句if-else。if-else根據判定條件的真假來(lái)執行兩種操作中的一種。當條件為真時(shí),執行if語(yǔ)句后面的代碼塊;當條件為假時(shí),執行else后面的代碼塊。題目中的代碼段是一個(gè)if-else的嵌套語(yǔ)句,根據if-else語(yǔ)句的執行過(guò)程來(lái)進(jìn)行分析。當x的值為0時(shí),布爾表達式"x= =0"的結果為真,就輸出”冠軍”;當x的值不為0時(shí),則執行else語(yǔ)句中的內容。else語(yǔ)句中的代碼又是一個(gè)if-else語(yǔ)句,還是和上面一樣進(jìn)行分析。當X的值不等于0且大于-3時(shí),布爾表達式”x>-3”的結果為真,輸出"亞軍";當x的值不等于0且不大干-3,也就是X的值不等于0同時(shí)x的值小于等于-3時(shí),則輸出"季軍"。經(jīng)過(guò)上述分析可知,要想輸出"季軍",x所滿(mǎn)足的條件為x!=O&x<=-3,但是當x<=-3時(shí),x的值一定不會(huì )為0。所以,X所滿(mǎn)足的條件可以簡(jiǎn)寫(xiě)為x<=-3。因此,本題的正確答案為D。
24.C。解析:本題考查的是構造方法的使用。Java語(yǔ)言中,構造方法是一種特殊的方法,是為對象初始化操作編寫(xiě)的方法,用它來(lái)定義對象的初始狀態(tài)。Java中的每個(gè)類(lèi)都有構造方法,它也是由方法名、參數和方法體組成的。構造方法有如下特點(diǎn):
構造方法的名字必須與類(lèi)名相同。
構造方法不返回任何數據,但不用void來(lái)聲明。
用戶(hù)不能直接調用構造方法,必須通過(guò)關(guān)鍵字new自動(dòng)調用。
構造方法可由用戶(hù)在類(lèi)中定義,默認時(shí)由Java語(yǔ)言自動(dòng)生成。但它是個(gè)空方法,變量被賦予該數據類(lèi)型的默認值。
在構造方法實(shí)現中,可以進(jìn)行方法重載,即定義多個(gè)構造方法。重載構造方法的目的是使類(lèi)具有不同的初始值,為類(lèi)對象的初始化提供方便。根據上述構造方法的特點(diǎn)可知,本題選項C的說(shuō)法是錯誤的。
25.D。解析:本題考查java.awt.event包中定義的適配器類(lèi)。該包中定義的適配器類(lèi)包括①ComponentAdapter構件適配器;②ContainerAdapter容器適配器;③FocusAdapter焦點(diǎn)適配器;④MouseAdapter鼠標適配器;⑤KeyAdapter鍵盤(pán)適配器⑥WindowAdapter窗口適配器,由此可知本題答案為D。
26.D。解析:在Java中定義了兩種類(lèi)型的流,字節型和字符型,這兩種流分別用4個(gè)抽象類(lèi)表示:InputStream,OutputStream,Reader,Writer,其中InptutStream和OutStream表示字節流,Reader和Reader是表示字符流,所以字節輸入抽象類(lèi)為InptutStream。
27.C。解析:本題考查Java的內存讀寫(xiě)。在java.io中,還提供了 ByteArrayInputStream、ByteArrayoutputStream和StringBufferInputStream類(lèi)可直接訪(fǎng)問(wèn)內存,它們是InputStream和OutputStream的子類(lèi)。用ByteArrayOutputStream可向字節數組寫(xiě)入數據;ByteArrayInputStream可從字節數組中讀取數據。
28.A。解析:本題考查Java的關(guān)系運算符。B中寫(xiě)法不正確,C、D均為賦值運算符。
29.C。解析:本題考查線(xiàn)程的基本操作。Java中提供了interrupt方法用來(lái)中斷一個(gè)線(xiàn)程,當調用一個(gè)線(xiàn)程的interrupt方法時(shí),即向該線(xiàn)程發(fā)送一個(gè)中斷請求。在調用線(xiàn)程的interrupt方法時(shí),如果該線(xiàn)程由于調用了sleep方法或wait方法而正在處于阻塞狀態(tài),那么線(xiàn)程會(huì )拋出一個(gè)InterruptException異常。
30.C。解析:本題考查System類(lèi)的基本知識。Systern類(lèi)是一個(gè)final類(lèi),所有的方法都用類(lèi)變量來(lái)調用,對System類(lèi)不可能實(shí)例化。System類(lèi)主要用來(lái)提供標準輸入/輸出和系統環(huán)境信息的訪(fǎng)問(wèn)設置。而System類(lèi)的屬性有:①public static final InputStream in;標準輸入;②publicstatic final OutputStream out;標準輸出;③pubhc static finalPrintStream err;標準錯誤輸出。
31.B。解析:本題考查的是Java增量運算符"++"。 x++是先使用后加l,即首先使用X的值進(jìn)行表達式的計算,然后才對x的值加1。而++x是先加1后使用,即首先對x的值加1,然后使用x的值進(jìn)行表達式的計算。本題首先生成一個(gè)整型變量C,其初始值為5。第一條輸出語(yǔ)句輸出c的初始值,即5。然后,第二條輸出表達式c++的結果,即先輸出C的值,然后才對c的值加1,所以,第二條輸出語(yǔ)句輸出的是5,輸出后c的結果才為6。最后一條輸出語(yǔ)句輸出結果為6。因此,本題的正確答案為B。
32.D。解析:本題考查的是Java中的Applet以及Applet與Application的區別。Applet是能夠嵌入HTML語(yǔ)言中,并能夠在瀏覽器中運行的類(lèi)。Applet的運行環(huán)境是Web瀏覽器,所以必須建立HTML文件,告訴瀏覽器如何加載與運行Applet。因為Applet是不能直接通過(guò)Java命令行啟動(dòng)運行的。所以選項D的說(shuō)法錯誤。
33.D。解析:本題考查線(xiàn)程的基本知識。線(xiàn)程與進(jìn)程在概念上是相關(guān)的,線(xiàn)程是由表示程序運行狀態(tài)的寄存器、程序計數器、棧指針以及堆棧組成,它不包含進(jìn)程地址空間中的代碼和數據。代碼所操作的數據是Java線(xiàn)程模型中的一個(gè)組成部分,數據與代碼是獨立的。數
據可以被多個(gè)線(xiàn)程共享,也可不共享。Java語(yǔ)言中提供兩種創(chuàng )建線(xiàn)程的方法,一種是通過(guò)繼承Thread類(lèi)創(chuàng )建線(xiàn)程,另一種是通過(guò)實(shí)現Runnable接口來(lái)創(chuàng )建線(xiàn)程。
34.A。解析:處理對象傳輸就是把對象串行化。Java語(yǔ)言中,如果要串行化某些類(lèi)的對象,這些類(lèi)就必須實(shí)現Serializable接口。
35.C。解析:本題考查Java語(yǔ)言的輸入/輸出流。InputStream類(lèi)、FilelnputStream類(lèi)和BufferedReader類(lèi)都是Java語(yǔ)言中和輸入輸出直接相關(guān)的類(lèi),不屬于輔助類(lèi),因此可以直接判斷出選項C為正確答案。
36.C。解析:paint()是與Applet顯示相關(guān)的方法,由它來(lái)具體執行Applet的繪制功能。init()方法用于初始化Applet,start()方法用于激活Applet。在init()方法完成后,將調用start()方法,而且在A(yíng)pplet每次顯示時(shí)都要調用。destroy()方法用于徹底終止Applet。
37.C。解析:線(xiàn)程生命周期中出現的狀態(tài)包括:新建狀態(tài)、可運行狀態(tài)、運行狀態(tài)、阻塞狀態(tài)和終止狀態(tài)。
38.C。解析:resume()是Thread類(lèi)提供的用于線(xiàn)程控制的方法;start()是Thread類(lèi)中的方法,新建的線(xiàn)程不會(huì )自動(dòng)運行,必須調用線(xiàn)程的start()方法才能運行該線(xiàn)程;run()是Thread類(lèi)中的方法,在該方法中定義了線(xiàn)程的具體行為,線(xiàn)程開(kāi)始執行時(shí),就是從它的run()方法開(kāi)始執行的,就像Java應用程序從main()開(kāi)始、Applet從ink()開(kāi)始一樣;init()不是Thread類(lèi)中的方法。
39.B。
二、基本操作題
第1處:int a,int b
第2處:maxNum=a
第3處:return maxNum
【解析】第1處定義max()方法中的兩個(gè)整型形參;第2處將兩者中較大的賦給maxNum;第3處返回最大值。
三、簡(jiǎn)單應用題
第1處:choice.getSelectedltem()
第2處:choice.getSelectedIndex()
【解析】第1處是獲取當前選中項的數據;第2處清除選中項的索引號。
四、綜合應用題
第1處:int i=0;i 第2處:kb.addKeyListener(new KeyEventHandler())
第3處:system.out.println(evt.getKeyChar())
【解析】第1處是作為遍歷keys中元素的條件,而keys中的字符元素就是各個(gè)按鈕對應的字符。第2處注冊鍵盤(pán)事件監聽(tīng)功能,KeyButton實(shí)現了KeyLIstener接口,而kb是KeyButton類(lèi)的對象,所以它是合格的監聽(tīng)者。第3處將從鍵盤(pán)讀到的字符輸出。
【計算機二級考試JAVA模擬試題庫二答案及解析】相關(guān)文章:
2015年計算機二級考試JAVA模擬試題庫(一)答案及解析06-23
全國計算機二級考試Java模擬試題(二)答案及解析01-26
全國計算機二級考試Java模擬試題(一)答案及解析04-21
計算機二級JAVA考試模擬試題及答案10-16
計算機考試二級考試Java模擬試題附答案11-14
計算機考試二級java模擬試題(含答案)12-19