國家二級(JAVA)筆試模擬試卷15(共444題)_第1頁
國家二級(JAVA)筆試模擬試卷15(共444題)_第2頁
國家二級(JAVA)筆試模擬試卷15(共444題)_第3頁
國家二級(JAVA)筆試模擬試卷15(共444題)_第4頁
國家二級(JAVA)筆試模擬試卷15(共444題)_第5頁
已閱讀5頁,還剩93頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

國家二級(JAVA)筆試模擬試卷15(共9套)(共444題)國家二級(JAVA)筆試模擬試卷第1套一、公共基礎(chǔ)選擇題(本題共10題,每題1.0分,共10分。)1、算法的時間復(fù)雜度是指A、執(zhí)行算法程序所需要的時間B、算法程序的長度C、算法程序中的指令條數(shù)D、算法執(zhí)行過程中所需要的基本運(yùn)算次數(shù)標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:算法的時間復(fù)雜度實(shí)際上就是執(zhí)行算法程序所需要的計(jì)算工作量。為了客觀地反映算法性能,在度量算法的時間復(fù)雜度時,應(yīng)該與編寫算法程序所使用的程序設(shè)計(jì)語言、執(zhí)行算法程序時所使用的計(jì)算工具以及程序員的水平無關(guān)。選項(xiàng)A錯誤,因?yàn)橥凰惴ǔ绦蛟谶\(yùn)行速度不同的計(jì)算機(jī)上運(yùn)行時,其計(jì)算時間是不同的。選項(xiàng)B錯誤。因?yàn)樗惴ㄋ帉懙某绦蜷L度往往與程序設(shè)計(jì)語言以及程序員的水平有關(guān),同一個算法,用不同的程序設(shè)計(jì)語言或者不同的程序員所編寫出的程序其長度可能會大不相同。選項(xiàng)C錯誤,因?yàn)楦鶕?jù)一個算法所編制出的程序程序中,其指令條數(shù)往往與程序設(shè)計(jì)語言以及程序員的水平有關(guān),不能用算法程序中的指令條數(shù)來度量算法的時間復(fù)雜度。所以,本題的正確答案為D。2、設(shè)棧S的初始狀態(tài)為空。元素a,b,c,d,e,f依次通過棧S,若出棧的順序?yàn)閎,d,c,f,e,a,則棧S的容量至少應(yīng)該為A、3B、4C、5D、6標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:根據(jù)題中給定的條件,可以作如下的模擬操作:①元素a,b進(jìn)棧,棧中有2個元素,分別為a,b;②元素b出棧后,元素c,d進(jìn)棧,棧中有3個元素,分別為a,c,d;③元素d,c出棧后,元素e,f進(jìn)棧,棧中有3個元素,分別為a,e,f;④最后,元素f,e,a出棧,棧為空。可以看出,進(jìn)棧的順序?yàn)閍,b,c,d,e,f,出棧的順序?yàn)閎,d,c,f,e,a,滿足題目要求。每次進(jìn)棧操作后,棧中最多有3個元素,所以,為了順利完成這些操作,棧的容量應(yīng)至少為3。本題的正確答案為A。3、在最壞情況下,下列排序方法中時間復(fù)雜度最小的是A、冒泡排序B、快速排序C、插入排序D、堆排序標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:在最壞情況下:冒泡排序需要的比較次數(shù)為n(n-1)/2;快速排序需要的比較次數(shù)也為n(n-1)/2;插入排序需要的比較次數(shù)也為n(n-1)/2;堆排序需要比較的次數(shù)為O(nlog2n)??芍?,在最壞情況下,堆排序的時間復(fù)雜度最小,本題的正確答案為D。4、在模塊化程序設(shè)計(jì)中,按功能劃分模塊的原則是A、各模塊的功能盡量單一,且各模塊之間的聯(lián)系盡量的少B、各模塊的功能盡量單一,且各模塊之間的聯(lián)系盡量緊密C、各模塊應(yīng)包括盡量多的功能D、各模塊應(yīng)包括盡量多的輸入輸出操作標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:模塊化設(shè)計(jì)是指把一個大程序按人們能理解的大小規(guī)模進(jìn)行分解。劃分模塊的基本原則是使每個模塊都易于理解。按照人類思維的特點(diǎn),按功能來劃分模塊最為自然。在按功能劃分模塊時,要求各模塊的功能盡量單一,各模塊之間的聯(lián)系盡量少。所以,選項(xiàng)A正確;選項(xiàng)B錯誤;選項(xiàng)C錯誤。本題的正確答案為A。5、數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)和存儲結(jié)構(gòu),下列數(shù)據(jù)結(jié)構(gòu)中不屬于存儲結(jié)構(gòu)的是A、線性鏈表B、二叉鏈表C、棧與隊(duì)列D、循環(huán)隊(duì)列標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:線性鏈表是線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu);二叉鏈表是二叉樹的鏈?zhǔn)酱鎯Y(jié)構(gòu);棧與隊(duì)列分別是特殊的線性表;循環(huán)隊(duì)列是隊(duì)列的一種順序存儲結(jié)構(gòu)??芍?,線性鏈表、二叉鏈表、循環(huán)隊(duì)列均屬于存儲結(jié)構(gòu),而棧與隊(duì)列屬于邏輯結(jié)構(gòu)。選項(xiàng)C為正確答案。6、下列敘述中正確的是A、軟件就是程序清單B、軟件就是存放在計(jì)算機(jī)中的文件C、軟件應(yīng)包括程序清單以及運(yùn)行結(jié)果D、軟件包括程序、數(shù)據(jù)和文檔標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:計(jì)算機(jī)軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另二部分,包括程序、數(shù)據(jù)及相關(guān)文檔的完整集合。用一個等式表示,則為:軟件=程序+文檔+數(shù)據(jù)選項(xiàng)A、B、C錯誤,正確答案是D。7、在結(jié)構(gòu)化方法中,軟件功能分解屬于下列軟件開發(fā)中的階段是A、概要設(shè)計(jì)B、需求分析C、詳細(xì)設(shè)計(jì)D、編程調(diào)試標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:概要設(shè)計(jì)的任務(wù)是劃分出構(gòu)成系統(tǒng)的各物理元素以及設(shè)計(jì)出軟件的結(jié)構(gòu)(如確定模塊及模塊間的關(guān)系)。設(shè)計(jì)過程通常分為以下幾步:提出可選擇方案;選擇合理方案;推薦最佳方案;功能分解;設(shè)計(jì)軟件結(jié)構(gòu);制定測試計(jì)劃;最后提交概要設(shè)計(jì)文檔。軟件功能分解屬于概要設(shè)計(jì)階段。本題的正確答案為A。8、下列敘述中正確的是A、程序設(shè)計(jì)過程中的主要工作是編制程序B、程序設(shè)計(jì)的主要目標(biāo)是編制出運(yùn)行結(jié)果正確的程序C、不良的程序設(shè)計(jì)風(fēng)格會增加程序的復(fù)雜性D、上述三種說法都不對標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:程序設(shè)計(jì)過程中包括很多步驟,編制程序只是其中的一步。所以,選項(xiàng)A錯誤。程序設(shè)計(jì)的最終產(chǎn)品是程序,但僅設(shè)計(jì)和編制出一個運(yùn)行結(jié)果正確的程序是不夠的,還應(yīng)養(yǎng)成良好的程序設(shè)計(jì)風(fēng)格。所以,選項(xiàng)B錯誤。程序設(shè)計(jì)的根本目標(biāo)是要降低程序的復(fù)雜性和提高程序的可讀性。而程序的復(fù)雜性主要來自以下兩個方面:問題固有的復(fù)雜性;不良的設(shè)計(jì)風(fēng)格人為增加了程序的復(fù)雜性。所以,良好的設(shè)計(jì)風(fēng)格對于降低程序的復(fù)雜性是很重要的,并且,好的設(shè)計(jì)風(fēng)格是好的程序風(fēng)格的基本保證。選項(xiàng)C正確。9、下列敘述中正確的是A、用E-R圖能夠表示實(shí)體集之間一對一的聯(lián)系、一對多的聯(lián)系、多對多的聯(lián)系B、用E-R圖只能表示實(shí)體集之間一對一的聯(lián)系C、用E-R圖只能表示實(shí)體集之間一對多的聯(lián)系D、用E-R圖表示的概念數(shù)據(jù)模型只能轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:用E-R圖可以簡單明了地描述實(shí)體及其相互之間的聯(lián)系,用E-R圖還可以方便地描述多個實(shí)體集之間的聯(lián)系和一個實(shí)體集內(nèi)部實(shí)體之間的聯(lián)系。所以,選項(xiàng)A正確,選項(xiàng)B與C錯誤。為了建立用戶所要求的數(shù)據(jù)庫,必須把概念結(jié)構(gòu)(用E-R圖表示的概念數(shù)據(jù)模型)轉(zhuǎn)換為某個具體的數(shù)據(jù)庫管理系統(tǒng)所支持的數(shù)據(jù)模型,這就是邏輯結(jié)構(gòu)設(shè)計(jì)所要完成的任務(wù)。在已給定數(shù)據(jù)庫管理系統(tǒng)的情況下,數(shù)據(jù)庫的邏輯設(shè)計(jì)可以分兩步來進(jìn)行:①將概念模型轉(zhuǎn)換成一般的數(shù)據(jù)模型;②將一般的數(shù)據(jù)模型轉(zhuǎn)換為特定的數(shù)據(jù)庫管理系統(tǒng)所支持的數(shù)據(jù)模型??芍?,用E-R圖表示的概念數(shù)據(jù)模型不僅能轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型,還可以轉(zhuǎn)換為其他數(shù)據(jù)模型,如網(wǎng)狀模型和層次模型等。所以,選項(xiàng)D說法錯誤。10、關(guān)系表中的每一橫行稱為一個A、元組B、字段C、屬性D、碼標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:在關(guān)系模型中,把數(shù)據(jù)看成一個二維表,每一個二維表稱為一個關(guān)系。關(guān)系表中的每一橫行稱為一個元組。本題的正確答案是A。二、選擇題(本題共25題,每題1.0分,共25分。)11、下列說法正確的是A、用abstract關(guān)鍵字修飾的方法,不能再被子類重寫B(tài)、用final關(guān)鍵字修飾的方法,不能再被子類重寫C、抽象類中一定要包含abstract方法D、某個類中包含了abstract方法,該類可以不聲明為abstract類標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查類定義中的關(guān)鍵字。abstract關(guān)鍵字修飾的方法稱為抽象方法,該方法必須被重寫,選項(xiàng)A錯誤;抽象類中不一定要包含abstract方法,但是,一旦某個類中包含了abstract方法,該類就必須聲明為abstract類,選項(xiàng)C和選項(xiàng)D錯誤;用final修飾的方法不能再被子類重寫,選項(xiàng)B正確。12、下列基本命令中,屬于類文件分解器命令的是A、javadocB、jarC、javahD、javap標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查Java的JDK工具。javadoc是Java文檔生成器,對Java源文件和包以MML格式生成AP文檔。壓縮程序jar.exe的功能是把多個文件以zip格式壓縮到一個擴(kuò)展名為jar的文件中,這樣可以保持程序的完整性并便于使用。javah是頭文件(header)產(chǎn)生器。javap是Java類分解器,對class文件提供字節(jié)代碼的反匯編,并打印。javac是Java編譯命令,能將源代碼編譯成字節(jié)碼,以.class擴(kuò)展名存入,java工作目錄中。java是Java解釋器,執(zhí)行字節(jié)碼程序,該程序是類名所指的類,必須是一個完整定義的名字。正確答案是D。13、按照J(rèn)ava的標(biāo)識符命名規(guī)則,下列表示常量的標(biāo)識符規(guī)范的是A、HelloWorldB、HELLO_WORLDC、hello_worldD、helloWorld標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查Java標(biāo)識符的命名規(guī)則。屬于考試重點(diǎn)內(nèi)容,應(yīng)該掌握。Java中標(biāo)識符的命名規(guī)則是:標(biāo)識符以字母、下劃線、美元符作為首字符的字符串序列;標(biāo)識符是區(qū)分大小寫的;標(biāo)識符的字符數(shù)沒有限制。但是Java有一些命名約定,基本原則為:$不作為變量名、方法名開頭:變量名、方法名首單詞小寫,其余單詞只有首字母大寫;接口名、類名首單詞第一個字母大寫;常量完全大寫。按照這些約定,可見只有選項(xiàng)B正確。14、下列哪個數(shù)代表八進(jìn)制整數(shù)?A、0XA5B、0144C、1840D、-1標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查Java語言中的整型常量。題目雖然不難,但屬于學(xué)習(xí)程序設(shè)計(jì)語言的基礎(chǔ),應(yīng)有所了解。整型常量有3種書寫格式。十進(jìn)制整數(shù),如:156,-230,345;八進(jìn)制整數(shù):以0開頭,如:012表示十進(jìn)制的10;十六進(jìn)制整數(shù):以0x或OX開頭,如0X123表示十進(jìn)制數(shù)291。由此可見,選項(xiàng)A表示的是十六進(jìn)制整數(shù),選項(xiàng)B是八進(jìn)制整數(shù)形式,以0開頭,為本題正確選項(xiàng);選項(xiàng)C和選項(xiàng)D都是十進(jìn)制整數(shù)。15、下列關(guān)于構(gòu)造方法說法正確的是A、構(gòu)造方法的名稱可以和類不一樣B、構(gòu)造方法必須有返回值C、只能用運(yùn)算符new調(diào)用構(gòu)造方法D、構(gòu)造方法不可以被重載標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查構(gòu)造方法的概念。構(gòu)造方法用來初始化類的一個對象,構(gòu)造方法具有和類一樣的名稱,選項(xiàng)A說法錯誤。構(gòu)造方法沒有返回類型還可以重載,選項(xiàng)B說法錯誤。構(gòu)造方法只能用運(yùn)算符new調(diào)用構(gòu)造方法,選項(xiàng)C說法正確。如果沒有定義構(gòu)造方法,在Java運(yùn)行時,系統(tǒng)會自動提供默認(rèn)的構(gòu)造方法,它沒有任何參數(shù),選項(xiàng)D說法錯誤。16、執(zhí)行下面的程序段后i和j的結(jié)果為inti=1,j=10;do{if(i++>--j)continue;}while(i<5);A、i=6,j=5B、i=5,j=5C、i=6,j=4D、i=5,j=6標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查考生對自增自減運(yùn)算符的理解。++op和op++,表示對操作數(shù)op加1,其中++op表示先對op加1然后再取值,而op++表示先取值,然后再對op進(jìn)行加1。--op和op--也是一樣,當(dāng)進(jìn)行到i=5時退出循環(huán),此時j為6。因此,本題正確答案為選項(xiàng)D。17、char變量的取值范圍是A、0~32767B、0~65535C、-256~255D、-32768~32767標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查Java中數(shù)據(jù)的取值范圍。char是字符變量類型,在內(nèi)存中占16位bit,表示范圍為0~65535,選項(xiàng)B正確。char不能當(dāng)作整數(shù)使用,char類型的值可以轉(zhuǎn)換為int類型,但反過來,int類型轉(zhuǎn)換為char類型時,必須強(qiáng)制執(zhí)行。18、下列數(shù)組array_test中,能在程序運(yùn)行時動態(tài)調(diào)整大小的是A、intarray_test[]=newint[10]B、String[]array_testC、ArrayListarray_test=newArrayList()D、Arrayarray_test=newArray()標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查數(shù)組的概念。數(shù)組的定義與初始化是考試重點(diǎn),也是比較容易出錯的地方,應(yīng)該靈活掌握。動態(tài)初始化需要使用new操作符來分配內(nèi)存空間,既可以在聲明時初始化,也可以在聲明以后初始化。聲明時初始化:類型數(shù)組名[]=new類型[數(shù)組長度];聲明后初始化:類型數(shù)組名[];數(shù)組名=new類型[數(shù)組長度];選項(xiàng)A定義了一個含有10個元素的整型數(shù)組,不符合題意;選項(xiàng)B定義了一個字符串?dāng)?shù)組。在Java語言中用一種特殊的類——java.util.ArrayList(數(shù)組列表)在運(yùn)行時能動態(tài)調(diào)整數(shù)組的大小。ArrayList類在定義數(shù)組時,不必限定數(shù)組的大小。在數(shù)組列表初始化時,可用add()方法將數(shù)組元素賦值。19、下面程序段:booleana=false;booleanb=true;booleanc=(a||b)&&(b);booleanresult=(a|b)&(b);執(zhí)行完后,正確的結(jié)果是A、c=false;result=falseB、c=true,result=trueC、c=true;result=falseD、c=false;result=true標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查Java中的運(yùn)算符??荚囍攸c(diǎn)內(nèi)容,歷次考試都有題目涉及。首先要清楚,“&&”是邏輯與運(yùn)算符;“&”是按位與運(yùn)算符;“||”是邏輯或運(yùn)算符;“|”是按位或運(yùn)算符。“a||b”的結(jié)果為true,所以“true&&true”結(jié)果為true。而“a|b”的結(jié)果也為true,故result=(a|b)&(b)語句的結(jié)果也為true,選項(xiàng)B正確。20、下列對繼承的說法正確的一項(xiàng)是A、子類能繼承父類的所有方法和狀態(tài)B、子類能繼承父類的非私有方法和狀態(tài)C、子類只能繼承父類的public方法和狀態(tài)D、子類只能繼承父類的方法,而不能繼承狀態(tài)標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:本題考查繼承的概念。繼承性是面向?qū)ο蠓椒ǖ囊粋€重要基本特征,它使代碼可重用,可降低程序復(fù)雜性。對一個類的繼承也就是構(gòu)件了一個子類,子類繼承了父類的方法和狀態(tài),同時還可以向新類中增添新的方法和狀態(tài)。由此可見選項(xiàng)A正確。21、表達(dá)式1+2+"aa"+3的值為A、12aa3B、3aa3C、12aaD、aa3標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查Java中的運(yùn)算符。“+”運(yùn)算符可以做字符串的連接運(yùn)算,題中的表達(dá)式的運(yùn)算過程可以看作是:((1+2)+"aa")+3,首先進(jìn)行1+2得到數(shù)值3,再和字符串"aa"做字符串的連接,得到字符串"3aa",最后跟數(shù)值3再做一次連接運(yùn)算,得到"3aa3"。22、數(shù)據(jù)報通信協(xié)議UDP把每個傳輸?shù)臄?shù)據(jù)大小控制在下列哪一項(xiàng)之內(nèi)A、8KBB、16KBC、64KBD、128KB標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查數(shù)據(jù)報通信的協(xié)議UDP。UDP協(xié)議對每個數(shù)據(jù)報是一個獨(dú)立的信息傳輸單位的大小限定,UDP協(xié)議對傳輸數(shù)據(jù)的大小有限制,在64KB之內(nèi)。正確答案為選項(xiàng)C。它的傳輸不可靠,但操作簡單,因此,適用于廣播式的重復(fù)傳輸、時鐘器的傳輸、ping命令的傳輸?shù)取?3、關(guān)于下面語句的說法正確的是String[][]s=newString[10][];A、該語句不合法B、該語句定義了一個二維數(shù)組,它包括10行10列C、s是一個包含10個數(shù)組的數(shù)組D、s中的每一個元素都被設(shè)置成""標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查多維數(shù)組的定義。Java中沒有多維數(shù)組這種數(shù)據(jù)結(jié)構(gòu),只有一維數(shù)組,在Java中實(shí)現(xiàn)的所謂的多維數(shù)組,實(shí)際上是由一維數(shù)組“焊接”而成的“數(shù)組的數(shù)組”。也就是說,某個一維數(shù)組的元素是另一個一維數(shù)組則稱之為二維數(shù)組,依次類推,一維數(shù)組的多次嵌套定義,構(gòu)成了多維數(shù)組。由此可見,題目中語句s是一個包含10個數(shù)組的數(shù)組,對每個元素都賦null值,選項(xiàng)C說法正確。24、利用File對象可以判斷的是A、創(chuàng)建子目錄B、獲得文件長度C、刪除文件D、判斷文件的存在標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查Java語言中對File對象的操作。要對一個文件進(jìn)行操作,首先需要有關(guān)的文件描述信息,例如文件的名稱、所在的路徑以及文件是否可讀可寫等。在Java語言中,類File是通過文件名列表來描述一個文件對象的屬性。通過File類提供的方法,可以獲得文件的描述信息,并且還可以改變文件的名稱、刪除文件等。File對象不可以創(chuàng)建文件目錄等操作。File對象可以判斷一個文件或目錄對象是否存在、是否可讀,但不可以執(zhí)行創(chuàng)建子目錄、獲得文件長度、刪除文件以及修改文件名字等操作。25、正確生成RandomAccessFile對象的語句的是A、Filef=newFile("readFile");RandomAccessFileraF=newRandomAccessFile(f);B、RandomAccessFileraF=newRandomAccessFile(d:\\mydir\\File3.txt,"rw");C、RandomAccessFileraF=newRandomAccessFile("readwriteFile","rw");D、RandomAccessFileraF=newRandomAccessFile("readwriteFile",rw);標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查隨機(jī)文件流的概念。文件操作中經(jīng)常需要的是隨機(jī)訪問,Java中的RandomAccessFile類提供了隨機(jī)訪問文件的功能,它繼承了Object類,用DataInput和DataOutput接口來實(shí)現(xiàn)。接口中定義了從流中讀/寫基本類型的數(shù)據(jù)方法。因此也可以隨機(jī)讀入數(shù)據(jù)文件的記錄。一個隨機(jī)文件建立的語句為:RandomAccessFileraF=newRandomAccessFile("readwriteFile","rw");其中"rw"表示可讀寫,所以選項(xiàng)C正確。26、要表示表格的數(shù)據(jù),需要繼承下列哪個類?A、AbstractTableModelB、TableModelC、JTableD、TableModeLabel標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:本題考查Swing的構(gòu)件。表格是Swing新增加的構(gòu)件,主要功能是把數(shù)據(jù)以二維表格的形式顯示出來。使用表格,最好先生成一個MyTableModel類型的對象來表示數(shù)據(jù),這個類是從AbstractTableModel類中繼承來的,其中的幾個方法一行要重寫。因?yàn)镴Table會從這個對象自動獲取表格顯示所必需的數(shù)據(jù),AbstractTableModel類的對象負(fù)責(zé)表格大小的確定(行、列)、內(nèi)容的填寫等。27、下面代碼的運(yùn)行結(jié)果是publicclassTest{publicstaticvoidmain(Stringargs[]){for(inti=0;i<3;i++){if(i<2)continue;System.out.println(i);}}}A、0B、1C、2D、3標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查簡單的Java控制語句。題目非常簡單,但還是應(yīng)該細(xì)心。這里應(yīng)注意continue語句。continue語句是跳過循環(huán)體中下面尚未執(zhí)行的語句,回到循環(huán)體的開始繼續(xù)下一輪的循環(huán)。當(dāng)然,在下一輪循環(huán)開始前,要先進(jìn)行終止條件的判斷,以決定是否繼續(xù)循環(huán)。對于for語句,在進(jìn)行終止條件的判斷前,還要先執(zhí)行迭代語句。題目所給程序中,當(dāng)i=0和i=1時,都會執(zhí)行continue語句,而不會執(zhí)行System.out.println(i)語句,只有當(dāng)i=2時才執(zhí)行System.out.println(i)語句,輸出為2,選項(xiàng)C正確。28、下列字節(jié)輸入流中,不能夠被實(shí)例化的是A、FileInputStreamB、FilterInputStreamC、ByteArrayInputStream,D、ObjectInputStream標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查Java中的字節(jié)輸入流。不能被實(shí)例化的類是抽象類,題目所給的4個選項(xiàng)中,由于只有過濾器輸入流是抽象類,因此選項(xiàng)B不能被實(shí)例化。FileInputStream可對一個磁盤文件涉及的數(shù)據(jù)操作;FilterInputStream過濾器輸入流本身也是一個抽象類,它的各個子類定義了過濾的類型方法;ByteArrayInputStream以字節(jié)數(shù)組作為輸入流;ObjectInputStream類實(shí)現(xiàn)了ObjectInput接口,對象在傳輸前,要首先實(shí)現(xiàn)Serializable接口。29、Java中,類FileInputStream和FileOutputStream提供了對文件的讀/寫方法是A、跳躍B、順序C、隨機(jī)或順序D、隨機(jī)標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查Java中,類FileInputStream和FileOutputStream提供了對文件的順序讀/寫方法,選項(xiàng)B正確。30、下列不是DataOutputStream方法的是A、writeDouble(doublev)B、writeInt(intv)C、writeString(intv)D、writeChar(intv)標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查DataOutputStream方法。DataOutputStream備有讀寫各種類型數(shù)據(jù)的方法,例如:writeDouble(doublev)寫8個字節(jié)長的二進(jìn)制雙精度浮點(diǎn)數(shù);writeInt(intv)寫出4個字節(jié)長的二進(jìn)制整數(shù);writeChar(intv)寫字符(Unicode碼)。DataOutputStream并沒有writeString(intv)方法。31、下列語句中所使用的布局管理器,當(dāng)改變?nèi)萜鞔笮。M件大小不會隨著一起改變的是A、Frameframe1=newFrame("FlowLayout");B、Frameframe1=newFrame("BorderLayout");C、frame1=newFrame("example");frame1.setLayout(newBorderLayout());D、frame1.setLayout(newGridLayout(2,3));標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:本題考查java中各種布局管理器的布局特點(diǎn)。在FlowLayout中所有組件都被壓縮至最小,當(dāng)容器大小變化時,上面的組件保持最小狀態(tài),大小不變;在BorderLayout中任何組件都盡量伸展,使它與容器的邊緣對齊,當(dāng)容器大小變化時,組件將隨之變化;GridLayout將容器等分為幾個格子,每個組件占一個格子,當(dāng)容器大小變化,格子大小也變化,組件大小也變化。32、關(guān)于下面程序段的說法,正確的是importjava.applet.*;importjava.awt.*;publicclassTestextendsApplet{ImageIMGonClick=over(this)title=放大;publicvoidinit(){IMGonClick=over(this)title=放大=newImage();}publicvoidpaint(Graphicsg){g.drawImage(IMGonClick=over(this)title=放大,0,0,this);}}A、該程序段可以正常運(yùn)行B、程序中所創(chuàng)建的Image為空,但可以顯示C、程序中所創(chuàng)建的Image不為空D、程序中所創(chuàng)建的Image為空,不能顯示標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查Image的概念和用法。程序的目的是想要使用drawImage(Imageimg,intx,inty,ImageObserverobserver)方法將img在Applet中畫出,但由于程序段所創(chuàng)建的Image為空,不能顯示,應(yīng)該先調(diào)用getImage()獲取已經(jīng)存在的圖像。所以選項(xiàng)D正確。33、用HTML文件顯示APPLET時,下面屬于必不可少的屬性的是A、NAME、HEIGHT和WIDTHB、CODE和NAMEC、CODEBASE、HEIGHT和WIDTHD、CODE、HEIGHT和WIDTH標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查Applet標(biāo)記中最基本的屬性的概念。<APPLET>標(biāo)記中有3個屬性是必不可少的,CODE屬性規(guī)定小程序的主要類文件的名稱,HEIGHT屬性規(guī)定了網(wǎng)頁上小程序窗口的高度,WIDTH屬性規(guī)定了網(wǎng)頁上小程序窗口的寬度,其他的屬性都是可選的.NAME屬性是為創(chuàng)建的Applet定義一個名字,以便同一個頁面中的Applet能夠彼此發(fā)現(xiàn)并進(jìn)行。CODEBASE屬性是執(zhí)行Applet的URL地址,該URL是包含了Applet代碼的目錄。34、下列關(guān)于Applet的敘述中,正確的是A、Applet是Java類,所以可以由JDK中的解釋器java.exe直接解釋運(yùn)行B、Applet應(yīng)該定義為javax.applet.Applet類或java.swing.Applet類的子類C、Applet與Application的主要區(qū)別在編譯方式上D、通過在Applet中使用getParameter可從HTML文件中獲得參數(shù)標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查Applet的基本概念。選項(xiàng)A說法錯誤,Applet雖然是Java類,但并不能用JDK中的解釋器java.exe直接解釋運(yùn)行,而必須使用appletviewer來運(yùn)行,運(yùn)行過程比Application更復(fù)雜。Applet必須定義為java.a(chǎn)pplet.Applet類或javax.swing.JApplet類的子類,選項(xiàng)B說法錯誤。Applet與Application的主要區(qū)別在執(zhí)行方式上,它們的編譯方式是相同的,選項(xiàng)C說法錯誤。通過在Applet中使用getParameter可從HTML文件中獲得參數(shù),選項(xiàng)D說法正確。35、下列說法中錯誤的一項(xiàng)是A、當(dāng)線程需要在synchronized塊中等待共享數(shù)據(jù)狀態(tài)改變時,則需要調(diào)用wait()方法B、當(dāng)線程需要在synchronized塊中等待共享數(shù)據(jù)狀態(tài)改變時,則需要調(diào)用notify()方法C、線程在synchronized塊中執(zhí)行完操作后,調(diào)用notify()方法通知正在等待的線程重新占有鎖D、wait()和notify()可以實(shí)現(xiàn)線程的同步操作標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查線程間交互的概念。當(dāng)線程進(jìn)入synchronized塊后,共享數(shù)據(jù)的狀態(tài)并不一定滿足該線程的需要,它要等待其他線程將共享數(shù)據(jù)改變?yōu)樗枰臓顟B(tài)后才能繼續(xù)執(zhí)行,但由于此時它占有了該對象的鎖,其他線程無法對共享數(shù)據(jù)進(jìn)行操作,此時線程調(diào)用wait()方法進(jìn)入等待狀態(tài),并且暫時釋放共享數(shù)據(jù)的對象鎖,其他線程可以獲得該對象鎖,進(jìn)入synchronized塊進(jìn)行操作,操作完成之后,再調(diào)用notify()方法通知等待的線程重新占有鎖,這樣就實(shí)現(xiàn)了線程的同步操作。由此可見,wait()方法是線程需要在synchronized塊中等待共享數(shù)據(jù)狀態(tài)改變時調(diào)用,而notify()方法是線程在synchronized塊中執(zhí)行完操作后調(diào)用,用來通知正在等待的線程重新占有鎖,選項(xiàng)B的說法錯誤。三、公共基礎(chǔ)填空題(本題共5題,每題1.0分,共5分。)36、在深度為5的完全二叉樹中,度為2的結(jié)點(diǎn)數(shù)最多為______。標(biāo)準(zhǔn)答案:15知識點(diǎn)解析:在深度為5的完全二叉樹中,度為2的結(jié)點(diǎn)數(shù)最多的是深度為5的滿二叉樹。在深度為5的滿二叉樹中,前4層中所有結(jié)點(diǎn)的度為2。即在深度為5的完全二叉樹中,度為2的結(jié)點(diǎn)數(shù)最多相當(dāng)于深度為4的滿二叉樹中的結(jié)點(diǎn)數(shù)。深度為4的滿二叉樹中的結(jié)點(diǎn)數(shù)為2的4次方-1=15。37、算法復(fù)雜度主要包括時間復(fù)雜度和______復(fù)雜度。標(biāo)準(zhǔn)答案:空間知識點(diǎn)解析:算法的復(fù)雜度主要包括時間復(fù)雜度和空間復(fù)雜度。所謂算法的時間復(fù)雜度,是指執(zhí)行算法所需要的計(jì)算工作量。一個算法的空間復(fù)雜度,一般是指執(zhí)行這個算法所需要的內(nèi)存空間。38、Jackson方法是一種面向______的結(jié)構(gòu)化方法。標(biāo)準(zhǔn)答案:數(shù)據(jù)結(jié)構(gòu)知識點(diǎn)解析:Jackson方法是一種面向數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)化方法。39、一個項(xiàng)目具有一個項(xiàng)目主管,一個項(xiàng)目主管可管理多個項(xiàng)目。則實(shí)體集“項(xiàng)目主管”與實(shí)體集“項(xiàng)目”的聯(lián)系屬于______的聯(lián)系。標(biāo)準(zhǔn)答案:一對多知識點(diǎn)解析:實(shí)體集“項(xiàng)目主管”與實(shí)體集“項(xiàng)目”的聯(lián)系屬于一對多的聯(lián)系。40、數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)和存儲結(jié)構(gòu),循環(huán)隊(duì)列屬于______結(jié)構(gòu)。標(biāo)準(zhǔn)答案:存儲或物理或存儲結(jié)構(gòu)或物理結(jié)構(gòu)知識點(diǎn)解析:數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲空間中的存放形式稱為數(shù)據(jù)的存儲結(jié)構(gòu)(也稱數(shù)據(jù)的物理結(jié)構(gòu))。所謂循環(huán)隊(duì)列,就是將隊(duì)列存儲空間的最后一個位置繞到第一個位置,形成邏輯上的環(huán)狀空間,供隊(duì)列循環(huán)使用??芍h(huán)隊(duì)列應(yīng)當(dāng)是物理結(jié)構(gòu)。四、填空題(本題共10題,每題1.0分,共10分。)41、多線程是Java語言的______機(jī)制,只能夠處理同步共享數(shù)據(jù)和各種不同的事件。標(biāo)準(zhǔn)答案:并發(fā)知識點(diǎn)解析:本題考查Java語言的特點(diǎn)。Java語言的開發(fā)運(yùn)行環(huán)境都是互聯(lián)網(wǎng),在這種分布式的環(huán)境中,并發(fā)和共享是很常見的事務(wù),要能并行地處理很多事務(wù),就要求Java語言提供一種可靠和高效的機(jī)制,來滿足高并發(fā)事務(wù)處理的需求。多線程很好地解決了網(wǎng)絡(luò)上的瓶頸問題及大量的網(wǎng)絡(luò)訪問問題。42、Java源文件中最多只能有一個______類,其他類的個數(shù)不限。標(biāo)準(zhǔn)答案:public知識點(diǎn)解析:本題考查Java的程序結(jié)構(gòu)。Java程序結(jié)構(gòu)是考試重點(diǎn)內(nèi)容,它非常簡單,應(yīng)該記憶相關(guān)內(nèi)容。Java源文件中最多只能有一個public類,其他類的個數(shù)不限。另外,還應(yīng)該了解package語句只能有0或1個:import語句可以有0或多個;接口可以定義0個或多個。43、執(zhí)行下面的程序段,輸出結(jié)果為______。publicclassQ{publicstaticvoidmain(Stringargvr)){intanar[]=newint[5];System.out.println(anar[0]);}}標(biāo)準(zhǔn)答案:0知識點(diǎn)解析:本題考查Java中數(shù)組的定義和初始化。在該方法里定義并動態(tài)初始化了一個整型數(shù)組anar,由于沒有賦初值,系統(tǒng)給默認(rèn)的初始值是數(shù)組中的每個元素全部為零。所以輸出數(shù)組中的第一個元素anar[0]時,自然也是等于零。44、Java運(yùn)行時系統(tǒng)通過______周期性地釋放無用對象所使用的內(nèi)存,以完成對象的消除。標(biāo)準(zhǔn)答案:垃圾收集知識點(diǎn)解析:本題考查Java的垃圾收集機(jī)制。Java語言中內(nèi)存的分配和釋放工作由自己完成,程序員不必做這些工作,它提供一個系統(tǒng)級的線程,跟蹤每個內(nèi)存的分配,在JVM的空閑處理中,垃圾收集線程將檢查和釋放不再使用的內(nèi)存(即可以被釋放的內(nèi)存)。垃圾收集的過程在Java程序的生存期中是自動的,不需要分配和釋放內(nèi)存,也避免了內(nèi)存泄漏。45、要使處于不同層次,甚至是互不相關(guān)的類可以具有相同的行為采用______。標(biāo)準(zhǔn)答案:接口知識點(diǎn)解析:本題考查接口的概念。接口是一種只含有抽象方法或常量的特殊的抽象類,主要功能有:不管類的層次,可實(shí)現(xiàn)互不相關(guān)的類具有相同的行為;通過接口可以說明多個類所需實(shí)現(xiàn)的方法;通過接口可以了解對象的交互界面,無需了解對象所對應(yīng)的類。通過接口可以為沒有任何關(guān)系的兩個或多個類之間提供相同的行為方式。46、關(guān)于文件名的處理中,測試當(dāng)前文件是否目錄用______函數(shù)。標(biāo)準(zhǔn)答案:booleanIsDirectory()知識點(diǎn)解析:本題考查考生對文件類中提供的一些基本函數(shù)的掌握和應(yīng)用能力。IsDirectory()方法是檢測本File對象所代表的是否一個目錄。如果存在并且是一個目錄則返回true;否則為false。47、下列程序的功能是創(chuàng)建了一個顯示5個"Hello!"的線程并啟動運(yùn)行,請將程序補(bǔ)充完整。publicclassThreadTestextendsThread{publicstaticvoidmain(Stringargs[]){ThreadTestt=newt.start();}publicvoidrun(){inti=0;while(true){System.out.println("Hello!");if(i++==4)break;}}}標(biāo)準(zhǔn)答案:ThreadTest()知識點(diǎn)解析:本題考查線程的創(chuàng)建。題目程序的功能是按要求實(shí)現(xiàn)輸出,通過繼承Thread類來創(chuàng)建線程。Thread類本身實(shí)現(xiàn)了Runnable接口,所以在java.lang的Thread類的定義中可以發(fā)現(xiàn)run()方法,通過繼承Thread類,必須重寫其中的run()方法定義線程體,然后創(chuàng)建該子類的對象創(chuàng)建線程。題目缺少線程創(chuàng)建的語句,因此應(yīng)該填寫:ThreadTestt=newThreadTest()。類ThreadTest繼承了Thread類,并將Thread類的run()方法進(jìn)行了重寫,run()方法的功能是實(shí)現(xiàn)輸出字符串。48、包含Swing構(gòu)件的Applet(小應(yīng)用程序)應(yīng)該是______類的子類。標(biāo)準(zhǔn)答案:JApplet或javax.swing.JApplet知識點(diǎn)解析:本題考查Swing構(gòu)件。Swing是AWT擴(kuò)展,提供了許多新的圖形界面構(gòu)件,都是以“J”開頭。頂層容器包括JFrame、JApplet、JDialog和JWindow共4個。JApplet是一個使Applet能夠使用Swing構(gòu)件的類,是java.a(chǎn)pplet.Applet類的子類。包含Swing構(gòu)件的Applet必須是JApplet類的子類。49、請閱讀下列程序代碼,然后將程序的執(zhí)行結(jié)果補(bǔ)充完整。程序代碼:publicclassthrowsException{staticvoidProc(intsel)throwsArithmeticException,ArrayIndexOutOfBoundsException{System.out.println("InSituation"+sel);if(sel==0){System.out.println("noExceptioncaught");return;}elseif(sel==1){intiArray[]=newint[4];iArray[1]=3;}}publicstaticvoidmain(Stringargs[]){try{Proc(0);Proc(1);}catch(ArrayIndexOutOfBoundsExceptione){System.out.println("Catch"+e);}finally{System.out.println("inProcfinally");}}}執(zhí)行結(jié)果:InSituation0noExceptioncaught______inProcfinally標(biāo)準(zhǔn)答案:InSituationl知識點(diǎn)解析:本題考查考生閱讀Java程序的能力。題目程序看似復(fù)雜,但流程非常簡單。程序的public類是throwsException,類中定義了Proc(intsel)方法。程序入口是main()方法,使用try-catch-finally來捕獲ArithmeticException和ArraylndexOutOfBounds-Exception異常,這兩個異常是關(guān)于算術(shù)異?;驍?shù)組索引越界的異常。執(zhí)行Proc(0)時,輸出InSituation0和noExceptioncaught兩條信息;執(zhí)行Proc(1)時,輸出InSituationl和inProcfinally兩條信息。整個程序并未發(fā)生異常。50、請將程序補(bǔ)充完整。importjava.a(chǎn)wt.*;publicclassFirstFrameextendsFrame{publicstaticvoidmain(Stringargs[]){FirstFramefr=newFirstFrame("Firstcontainer!");fr.setSize(240,240);fr.setBackground(Color.yellow);______}publicFirstFrame(Stringstr){super(str);}}標(biāo)準(zhǔn)答案:fr.setVisible(true);知識點(diǎn)解析:本題考查容器的概念。題目所給程序段的容器是一個窗口,窗口中并沒有放置其他構(gòu)件,由于默認(rèn)為不可見,因此需要調(diào)用setVisible(true)來設(shè)置窗口為可見的。需要注意題目程序只是生成一個窗口,但是并不能響應(yīng)用戶的操作,即使是單擊窗口右上角的“關(guān)閉”按鈕,也不能關(guān)閉窗口。國家二級(JAVA)筆試模擬試卷第2套一、公共基礎(chǔ)選擇題(本題共10題,每題1.0分,共10分。)1、算法的空間復(fù)雜度是指()。A、算法程序的長度B、算法程序中的指令條數(shù)C、算法程序所占的存儲空間D、算法執(zhí)行過程中所需要的存儲空間標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:算法的空間復(fù)雜度,是指執(zhí)行這個算法所需的存儲空間。算法所占用的存儲空間包括算法程序所占用的空間、輸入的初數(shù)據(jù)所占用的存儲空間及算法執(zhí)行過程中所需要的額外空間。2、用鏈表表示線性表的優(yōu)點(diǎn)是()。A、便于隨機(jī)存取B、花費(fèi)的存儲空間較順序存儲少C、便于插入和刪除操作D、數(shù)據(jù)元素的物理順序與邏輯順序相同標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:數(shù)據(jù)結(jié)構(gòu)是相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合?!瓣P(guān)系”描述的是數(shù)擁元素之間的邏輯關(guān)系,因此又稱數(shù)據(jù)的邏輯結(jié)構(gòu)。數(shù)據(jù)的存儲結(jié)構(gòu)是指數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)的邏輯結(jié)構(gòu))在計(jì)算機(jī)中的表示,又稱物理結(jié)構(gòu)。數(shù)據(jù)的存儲結(jié)構(gòu)有順序存儲結(jié)構(gòu)和鏈?zhǔn)酱鎯Y(jié)構(gòu)兩種,不同存儲結(jié)構(gòu)的數(shù)據(jù)處理效率不同。由于鏈表采用鏈?zhǔn)酱鎯Y(jié)構(gòu),元素的物理順序并不連續(xù),對于插入和刪除無需移動元素,很方便,當(dāng)查找元素時就需要逐個元素查找,因此查找的時間相對更長。3、已知一棵二叉樹前序遍歷和中序遍歷分別為ABDEGCFH和DBGEACHF,則該二叉樹的后序遍歷為()。A、GEDHFBCAB、DGEBHFCAC、ABCDEFGHD、ACBFEDHG標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:二叉樹的遍歷有3種:前序、中序和后序。后序遍歷首先遍歷左子樹或左子結(jié)點(diǎn),然后遍歷右子樹或右子結(jié)點(diǎn),最后訪問根結(jié)點(diǎn):中序遍歷首先遍歷左子樹或左子結(jié)點(diǎn),然后訪問根結(jié)點(diǎn),最后遍歷右子樹或右子結(jié)點(diǎn),后序遍歷首先訪問根結(jié)點(diǎn),然后遍歷左子樹或左子結(jié)點(diǎn),最后遍歷右子樹或右子結(jié)點(diǎn)。本題根據(jù)前序遍歷和中虛序遍歷的結(jié)果可以得出:又樹的結(jié)構(gòu),然后再對其進(jìn)行后序遍歷,因此答案為選項(xiàng)B。4、下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是()。A、順序存儲的有序線性表B、線性鏈表C、二叉鏈表D、有序線性鏈表標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:二分法查找只適用于順序存儲的有序線性表,對于順序存儲的非有序線性表和線性鏈表,都只能采用順序查找。5、結(jié)構(gòu)化程序設(shè)計(jì)的3種基本結(jié)構(gòu)是()。A、過程、子程序和分程序B、順序、選擇和重復(fù)C、遞歸、堆棧和隊(duì)列D、調(diào)用、返回和轉(zhuǎn)移標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:程序的三種基本控制結(jié)構(gòu)包括:順序、選擇和重復(fù)(循環(huán)),這三種結(jié)構(gòu)就足以表達(dá)出各種其他形式的結(jié)構(gòu)。6、下列敘述中正確的是()。A、態(tài)模塊化程序設(shè)計(jì)中,一個模塊應(yīng)該盡量多的包括與其他模塊聯(lián)系的信息B、在自頂向下、逐步細(xì)化的設(shè)計(jì)過程中,首先應(yīng)設(shè)計(jì)解決問題的第一個細(xì)節(jié)C、在模塊化程序設(shè)計(jì)中,一個模塊內(nèi)部的控制結(jié)構(gòu)也要符合結(jié)構(gòu)化原則D、在程序設(shè)計(jì)過程中,不能同時采用結(jié)構(gòu)化程序設(shè)計(jì)方法與模塊化程序設(shè)計(jì)方法標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:在模塊化程序設(shè)汁中,模塊之間的聯(lián)系可以通過程序的控制結(jié)構(gòu)來實(shí)現(xiàn),在自頂向下逐步細(xì)化的設(shè)汁過程中,首先要考慮全局目標(biāo),而不是細(xì)節(jié)。在程序設(shè)計(jì)中模塊化和結(jié)構(gòu)化可以同時使用,一個模塊的內(nèi)部結(jié)構(gòu)也要符合結(jié)構(gòu)化設(shè)計(jì)原則。7、設(shè)計(jì)軟件結(jié)構(gòu)是在軟件生命周期的()。A、軟件定義期B、軟件開發(fā)期C、軟件維護(hù)期D、以上3個都不是標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:設(shè)計(jì)軟件結(jié)構(gòu),是在軟件概要設(shè)計(jì)階段進(jìn)行的,而概要設(shè)計(jì)屬于軟件開發(fā)期。8、數(shù)據(jù)庫技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的()。A、存儲問題B、共享問題C、安全問題D、保護(hù)問題標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:在數(shù)據(jù)庫系統(tǒng)中,需要對數(shù)據(jù)進(jìn)行集中、統(tǒng)一的管理,以達(dá)到被多個應(yīng)用程序共享的目標(biāo)。9、設(shè)計(jì)數(shù)據(jù)庫的存儲結(jié)構(gòu)屬于()階段。A、需求分析B、概念設(shè)計(jì)C、邏輯設(shè)計(jì)D、物理設(shè)計(jì)標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:物理設(shè)計(jì)階段主要解決選擇文件存儲結(jié)構(gòu)和確定文件存取的方法的問題,包括:選擇存儲結(jié)構(gòu)、確定存取方法、選擇存取路徑、確定數(shù)據(jù)的存放位置。10、相對于數(shù)據(jù)庫系統(tǒng),文件系統(tǒng)的主要缺陷有數(shù)據(jù)關(guān)聯(lián)差、數(shù)據(jù)不一致性和()。A、可重用性差B、安全性差C、非持久性D、冗余性標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:文件系統(tǒng)所管理的數(shù)據(jù)文件基本上是分散、相互獨(dú)立的。因此相對于數(shù)據(jù)庫系統(tǒng),以此為基礎(chǔ)的數(shù)據(jù)處理存在3個缺點(diǎn):數(shù)據(jù)冗余大、數(shù)據(jù)的不一致性、程序與數(shù)據(jù)的相互依賴(簡稱為數(shù)據(jù)依賴)。二、選擇題(本題共25題,每題1.0分,共25分。)11、用來導(dǎo)入已定義好的類或包的語句是()。A、mainB、importC、publicclassD、class標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查Java中的import語句。Java中使用import語句來導(dǎo)入己定義好的類或包,需要注意Java語言的java.lang包是編譯器自動導(dǎo)入的,編程時如果使用該包中的類,可省去Import導(dǎo)入,如果要使用其他包中的類,必須用import導(dǎo)入。12、下列敘述中,正確的是()。A、聲明變量時必須指定一個類型B、Java認(rèn)為變量number與Number相同C、Java中唯一的注釋方式是"http://"D、源文件中public類可以有0或多個標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:本題考查Java中的基本概念。關(guān)于Java的基本概念是考試重點(diǎn),應(yīng)該重視。在Java中,聲明變量時,必須指定類型,否則將會出錯,所以選項(xiàng)A說法正確。Java標(biāo)識符是區(qū)分大小寫的,這是與C語言不同的,變量number和Number對Java來說是不同的,選項(xiàng)B說法錯誤。Java中有三種注釋方式:文檔注釋嚴(yán)/**…*/,被javadoc處理,可以建立類的一個外部說明性文件:c語言注釋風(fēng)格/*…*/,用于去掉當(dāng)前不再使用但仍想保留的代碼等:單行注釋//,格式上要求注釋符//后必須緊跟一個空格,然后才是注釋信息,選項(xiàng)C說法錯誤。源文件中public類可以有0或1個,不能多于1個,選項(xiàng)D說法錯誤。13、下列屬于合法的Java標(biāo)識符是()。A、ABCB、&5678C、+rriwoD、saler標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查Java語言中的整型常量。整型常量有3種書寫格式:十進(jìn)制整數(shù),如156J,-230,345:八進(jìn)制整數(shù):以0開頭,如012表示十進(jìn)制的10:十六進(jìn)制整數(shù):以0x或OX開頭.如0X123表示十進(jìn)制數(shù)291。由此可見,選項(xiàng)A表示的是十六進(jìn)制整數(shù),選項(xiàng)B不是整數(shù)形式,選項(xiàng)C是十進(jìn)制整數(shù),選項(xiàng)D是八進(jìn)制整數(shù),為本題正確選項(xiàng)。Java中標(biāo)識符的命名規(guī)則是:標(biāo)識符以字母、下劃線、美元符作為首字符的字符串序列;標(biāo)識符是區(qū)分大小寫的:標(biāo)識符的字符數(shù)沒有限制由此可見Java中標(biāo)識符不能以""開頭,所以選項(xiàng)A錯誤,不能以"&"開頭,選項(xiàng)B錯誤,不能以"+"開頭,選項(xiàng)c錯誤,只有選項(xiàng)D是正確答案。14、下列代表十六進(jìn)制整數(shù)的是()。A、0123B、1900C、fa00D、0×a2標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查Java語言中的整型常量。整型常量有3種書寫格式:十進(jìn)制整數(shù),如123,-30,365:,八進(jìn)制整數(shù):以0開頭,如011表示十進(jìn)制的9;十六進(jìn)制整數(shù);以0x或OX開頭,如031123表示十進(jìn)制數(shù)291。由此可見,選項(xiàng)D表示的是十六進(jìn)制整數(shù),選項(xiàng)C不是整數(shù)形式,選項(xiàng)B是十進(jìn)制整數(shù),選項(xiàng)A是八進(jìn)制整數(shù),只有選項(xiàng)D為本題正確選項(xiàng)。15、在Java中,實(shí)現(xiàn)用戶界面功能的包是()。A、java.appletB、javax.transactionC、java.utilD、java.awt標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查考生對Java包功能的了解。選項(xiàng)A中java.applet包是為Applet提供執(zhí)行需要的所有類,主要訪問Applet內(nèi)容的通信類;選項(xiàng)B中l(wèi)xansactlOn包是屬于javax而不是java.javax.transacUon包是提供事務(wù)處理所需要的包:選項(xiàng)C中包提供使用程序類和集合類,如系統(tǒng)特性定義和使用、日期函數(shù)類,集合Collection、Map、List、Anay等常用工具類;java.awt包是封裝抽象窗口工具包,提供構(gòu)建和管理用戶圖形界面功能,為本題正確答案。16、下面()正確表示了int類型的聚會范圍。A、-216~216-1B、-231~231-1C、-232~232-1D、-264~264-1標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:該題考查對摹本數(shù)據(jù)類型的長度范圍的掌握。在Java語言中,每一種基本類型的長度范圍是固定的,它不隨著機(jī)器字長的改變而改變。對于整型(int),它的長度是4個字節(jié),而且它可正可負(fù),所以其取值范圍應(yīng)該是-232~232-1e17、在編寫JAVA程序的時候,如果不為類的成員變量定義初始值,JAVA會給它們設(shè)置默認(rèn)值,下列說法中不正確的是()。A、Byte的默認(rèn)值是0B、int的默認(rèn)值是0C、10ng的默認(rèn)值是0.0LD、float的默認(rèn)值是0.0f標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:Long類型的默認(rèn)值為0L,而不是0.0L。18、JAVA語言中所有的簡單數(shù)據(jù)類型都被包含在()中。A、java.sqlB、java.awtC、java.langD、java.math標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:Java語言中,所有的簡單數(shù)據(jù)類型都被包含在包java.lang中。19、設(shè)a=8,則表達(dá)式a>>>2:的值是()A、1B、2C、3D、4標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題具體考查對位運(yùn)算符中無符號右移運(yùn)算符的掌握。無符號右移運(yùn)算符“>>>”用于將—個數(shù)的各二進(jìn)制位全部無符號右移若干位,與運(yùn)算符“>>”不同的是左補(bǔ)0。在本題中,8的二進(jìn)制表示是1000,右移兩位后變成了0010,對應(yīng)的十進(jìn)制數(shù)是2020、以下各選項(xiàng)中能正確聲明一個表示50個值為null的字符串?dāng)?shù)組的是()。A、string[]a;B、stringa[];C、chara[50][]D、stringa[]=newString[50]標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查對字符串?dāng)?shù)組變量聲明的掌握。在Java語言中,typearrayName[]和type[]arrayNamer效果一樣,都表示聲明一個數(shù)組。所以選項(xiàng)A和選項(xiàng)B的效果是一樣的,對于本題來說都是不正確的,因?yàn)樗鼈儧]有指明數(shù)組所包含的元素的個數(shù);選項(xiàng)C是一個二維的字符數(shù)組,Java語言跟C語言不一樣,在C語言中,—個二維的字符數(shù)組就可以表示一個一維的字符串?dāng)?shù)組。而在Java中,字符char是基本數(shù)據(jù)類型,字符串string則是以對象的形式來表示的。所以,chara[][]并不等價于stringa[]。而且C選項(xiàng)并沒有指明數(shù)組的長度;選項(xiàng)D正確地聲明了一個長度為50的空字符串?dāng)?shù)組。21、下列程序的輸出結(jié)果是()。publicclassArrayTest{publicstaticvoidmain(Stringargs[]){int[]intArray=newint[3]for(inti=0;i<3;i++){intArray[i]=i+2;system.out.println("IntArrayr["+i+"]"=intArray[i]);}System.out.println(“---------”);intarrLen=4;IntArray=newint[arrLen];For(intj=intArray.length;j>=0;j--){intArray[j]=j*3;system.out.println("hello"+intArray[j]);}}}A、編譯未通過B、編譯通過,但運(yùn)行錯誤C、可以運(yùn)行,但有錯誤D、以上都不對標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:這是一道考查數(shù)組引用的題,目的是考查如何在程序中引用初始化后的數(shù)組。引用的方式為arrayName[index],其中index為數(shù)組的下標(biāo),可以為整數(shù),變量和表達(dá)式,范圍從0開始,一直到數(shù)組的長度減1。在Java語言中,是要對數(shù)組下標(biāo)進(jìn)行檢查的。因此當(dāng)程序運(yùn)行到數(shù)組的長度值時,就發(fā)生了越界現(xiàn)象。22、下列程序的運(yùn)行結(jié)果是()。Publicclasssun{Publicstaticvoidmain(Stringargs[]){intx=4,y=0;if(Math.pow(x,2)=16)y=X;if(Math.pow(x,2)<15)y=1/xif(Math.pow(x,2)>15)y=(int)Math.pow(x92)+1;system,out.println(y);}}A、4B、17C、18D、0.25標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題是考查對if-else分支結(jié)構(gòu)和幾個標(biāo)準(zhǔn)函數(shù)的理解。pow(x,y)方法是x的y次冪,程序中pow(x,2)滿足第1個if語句和第3個if語句,條件變量y將被賦值兩次,但對于同一個變量來說,只能存儲最后一個所賦的值。23、自定義的異常類可從()類繼承。A、ErrorB、AWTErrorC、VirtualMachineErrorD、Exception及其子集標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:Java語言中Throwable類分為Error和Execption兩個子類。自定義的異常類是從Exception及其子集類繼承的。24、t為int類型,進(jìn)入下面的循環(huán)之前,t的值為0。則下列說法中正確的是()。while(t=1){…}A、循環(huán)控制表達(dá)式的值為0B、循環(huán)控制表達(dá)式的值為1C、循環(huán)控制表達(dá)式不合法D、以上說法都不對標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考核對while循環(huán)及邏輯表達(dá)式的理解。循環(huán)控制表達(dá)式為賦值表達(dá)式t=1,水遠(yuǎn)為1(為具)。25、下面for循環(huán)語句的執(zhí)行結(jié)果是()。for(intj=10;j>3;j--){if(j%3!=0)j--;--j;--j;System.out.println(j);}A、63B、74C、62D、73標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:該題考查對for循環(huán)的理解。①當(dāng)j=10時,滿足條件j>3,由于for循環(huán)中j--執(zhí)行了1次,j的值為9,執(zhí)行if浯句,j%3=0不滿足條件,繼續(xù)向下執(zhí)行2次--j,j的值為7:②當(dāng)j=7時,滿足條件j>3,由于for循環(huán)中j--執(zhí)行了1次,的佰為6,執(zhí)行if[語句,i%3=0不滿足條件,繼續(xù)向下執(zhí)行2次--jj的值為4。26、關(guān)于Applet執(zhí)行的操作,下面說法正確的是()。A、在運(yùn)行時調(diào)用其他程序B、可以進(jìn)行文件讀寫操作C、不能裝載動態(tài)連接庫和調(diào)用任何本地方法D、試圖,打開一個socket進(jìn)行網(wǎng)絡(luò)通信,但是所連接的主機(jī)并不是提供Applet的主機(jī)標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查Applet的概念。Java虛擬機(jī)為Applet提供能夠良好運(yùn)行的沙箱,一旦它們試圖離開沙箱則會被禁止。由于Applet是通過網(wǎng)絡(luò)傳遞的,這就不可避免地使入想到會發(fā)生安全問題。例如,有人編寫惡意程序通過小應(yīng)用程序讀取用戶密碼并散播到網(wǎng)絡(luò)上,這將會是一件非??膳碌氖虑椤K?,必須對小應(yīng)用程序進(jìn)行限制。瀏覽器禁止Applet執(zhí)行下列操作:Applet不能運(yùn)行任何本地可運(yùn)行程序,選項(xiàng)A錯誤。禁止加載本地庫或方法,Applet只能使用自身的代碼或Applet瀏覽器提供的JavaAPI,不允許裝載動態(tài)連接庫和調(diào)用任何本地方法,選項(xiàng)c正確。禁止讀寫本地計(jì)算機(jī)的文件系統(tǒng),選項(xiàng)B錯誤,禁止向提供Applet之外的任何主機(jī)建立網(wǎng)絡(luò)連接,如果Applet試圖打開一個socket進(jìn)行網(wǎng)絡(luò)通信,所連接的主機(jī)必須是提供Aoolet的主機(jī),選項(xiàng)D錯誤。27、下列關(guān)于Applet生命周期的說法,正確的是()。A、voidinit()在Applet下載前調(diào)用B、voidstart()只在初始化之后調(diào)用C、voidstop()在關(guān)閉瀏覽器時調(diào)用D、stop()總在voiddestroy()之前被調(diào)用標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查Applet生命周期的概念。Applet生命周期是考試重點(diǎn)考查內(nèi)容,應(yīng)該加以重視ovoidinit()在Apple下載時調(diào)用,而木是下載前調(diào)用,選項(xiàng)A錯誤。voidstart()在初始化之后以及在Applet被重新訪問時調(diào)用,不僅僅只是在初始;之后調(diào)用,選項(xiàng)B錯誤。voidstop()在停止執(zhí)行時調(diào)用,關(guān)閉瀏覽器時調(diào)用的是voiddestroY(),選項(xiàng)C錯誤。voiddestroy()在關(guān)閉瀏覽器Applet從系統(tǒng)中撤出時調(diào)用,此時Applet必然調(diào)用stop()方法停止其運(yùn)行,然后才能調(diào)用voiddestroy()方法從內(nèi)存卸載并釋放該Applet的所有資源。注意理解Applet的執(zhí)行過程28、對于下面語句的說法,不正確的是()。ThreadthrObj=newThread();A、系統(tǒng)沒有為該線程對象分配資源B、只能啟動或者終止C、創(chuàng)建了一個空的線程對象D、可以調(diào)用其他方法標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查線程的創(chuàng)建。通過new命令創(chuàng)建一個線程對象后,該線程對象就處于創(chuàng)建狀態(tài),上面的語句只是創(chuàng)建了一個空的線程對象,選項(xiàng)c說法正確。此時,系統(tǒng)并沒有為該線程對象分配資源,選項(xiàng)A說法正確。處于這種狀態(tài)的線程,只能啟動或者終止,選項(xiàng)B說法正確。該線程此時并不能調(diào)用其他方法,如果調(diào)用其他方法就會失敗并引起非法狀態(tài)處理,選項(xiàng)D說法錯誤。29、在Java中,線程是()。A、分時的B、搶占式的C、非搶占式的D、非分時的標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查線程的調(diào)度。Java的線程調(diào)度策略是“種基于優(yōu)先級的搶占式調(diào)度,選項(xiàng)B正確。Java這種搶占式凋度可能是分時的,即每個等待池中的輪流執(zhí)行,也可以不是,即線程逐個運(yùn)行,具體采用哪種方式,由具體YVM而定。線程—般通過使用Meep()等方法保證給其他線程運(yùn)行事件。30、下列關(guān)于線程和進(jìn)程的說法正確的是()。A、進(jìn)程結(jié)構(gòu)的所有成分都在用戶空間內(nèi)B、用戶程序能夠直接訪問進(jìn)程涉及的數(shù)據(jù)C、線程是內(nèi)核級的實(shí)體D、線程結(jié)構(gòu)駐留在用戶空間中標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查線程和進(jìn)程的概念。線程與進(jìn)程在概念上是相關(guān)的,進(jìn)程由代碼、數(shù)據(jù)、內(nèi)核狀態(tài)和一組寄存器組成,而線程是由表示程序運(yùn)行狀態(tài)的寄存器,如程序計(jì)數(shù)器、棧指針以及堆棧組成,線程不包括進(jìn)程地址空間中的代碼和數(shù)據(jù),線程是計(jì)算過程在某一時刻的狀態(tài)。進(jìn)程是一個內(nèi)核級的實(shí)體,進(jìn)程結(jié)構(gòu)的所有成分都在內(nèi)核空間中,一個用戶程序不能直接訪問這些數(shù)據(jù)。線程是一個用戶級的實(shí)體,線程結(jié)構(gòu)駐留在用戶空間中,能夠被普通的用戶級方法直接訪問。31、下列選項(xiàng)成員變量聲明正確的是()。A、publicprotectedfinalinti;B、abstractclassF1{…}C、privatedoubleheight;D、doubleweigh{}標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查對成員變量的聲明。成員變量的聲明格式位:修飾符type變量名;其中type可以是.java語言中的任意數(shù)據(jù)類型,而修飾符可以是public、protected,private,static,final,transient,volatile等。選項(xiàng)A錯誤,成員變量不能同時聲明成public和protected。選項(xiàng)B是類的聲明格式,并不是成員變量的聲明。成員變量聲明應(yīng)以“;”結(jié)尾,選項(xiàng)D錯誤。選項(xiàng)C聲明了一個私有的double型成員變量,為正確答案。32、下面程序段的輸出結(jié)果是()classTest{publicstaticvoidmain(Stringargs[]){MyThreadt=newMyThread();t.displayOutput("thasbeencreateD");t.start();}}ClassMyThreadextendsThread{publicvoiddisplayOutput(Strings){System.out.println(S);}publicvoidrun(){displayOutput("tiSrunning.");}}A、thasbeencreated.B、thasbeencreated.TiSrunning.C、tiSrunning.D、編譯出錯標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:start()方法就可以啟動該線程,線程也就處于可運(yùn)行狀態(tài)Runnable。Start()方法產(chǎn)生了線程運(yùn)行需要的系統(tǒng)資源,并調(diào)用線程體,也就是Nn()方法,使得線程可以進(jìn)入運(yùn)行狀態(tài)。程序運(yùn)行時首先創(chuàng)建一個新的線程對象t,并調(diào)用displayOutput(Srungs)方法輸出thasbeencreatedot.start()方法調(diào)用lain()方法,輸出tisrunning,所以正確答案為選項(xiàng)A。33、執(zhí)行下列程序時,會產(chǎn)生什么異常()。publicclassTest{publicstaticvoidmain(Stringargs[]){intd=101;intb=220;longa=321;System.out.println((a-b)/(a-b-d));}}A、ArraylndexOutOfBoundsExceptionB、NumberFormatExceptionC、AriUiinedcExcepdOnD、EOFExCtion標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查異常的概念。首先應(yīng)該掌握題目選項(xiàng)中給出的都是什么類型的異常。選項(xiàng)A是當(dāng)訪問數(shù)組中非法元素時引發(fā),出現(xiàn)數(shù)組負(fù)下標(biāo)異常。選項(xiàng)B是格式化數(shù)字異常。選項(xiàng)C是算術(shù)異常,如程序觸發(fā)分母為0,或用0取模時出現(xiàn)。選項(xiàng)D是文件已結(jié)束異常。當(dāng)Java執(zhí)行這個算術(shù)表達(dá)式的時候,由于求模運(yùn)算的分母是a-b-d=0,就會構(gòu)造一個ArithmeticException的異常對象來使程序停下來并處理這個錯誤的情況,在運(yùn)行時拋出這個異常。默認(rèn)的處理器打印出Exception的相關(guān)信息和發(fā)生異常的地點(diǎn)。34、下面程序段的輸出結(jié)果為()。pubUCClassTeS{publicstaticvoidmain(StringargS[]){booleaha,b,c;a=(3<5);b=(a==tme);System.Out.phntln("a="+a+"b="+b);c=(b==false);SyStem.out.println("b="+b+"C="+c);}}A、a=tmeb=falSeB、a=trueb=falseb=truec=falseb=trueC=tmeC、a=trueb=trueD、a=falSeb=falseb=truec=falSeb=tmec=falSe標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查關(guān)系運(yùn)算符<和==。題目中a=(3<5);比較3和5的大小,因?yàn)?<5,返回true給a;b=(a==true);判斷a是否為真,因?yàn)閍確實(shí)為真,返回true給b;c=(b=false);判斷b是否為假,因?yàn)閎不為假,返回false給c。最后結(jié)果a=true,b=true,b=true,c=false,選項(xiàng)C正確。35、下面程序段的輸出結(jié)果是()。publiCClaSsTest{publicstaticvoidmain(SthngarSs[]){inta,b;for(a=1,b=1;a<(z100;a++){if(b>=10)break;if(b%2=1){b+=2;continUe;}}System.out.println(a);}}A、5B、6C、7D、101標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查for循環(huán)和if語句的嵌套以及break語句和continue語句的用法。第1個if語句的意義為,當(dāng)b>=10時退出for循環(huán),第2個if語句的意義為:如果b%2=1,則b的值加2并退出本次循環(huán)。本程序當(dāng)b的值分別為1、3、5、7和9的時候執(zhí)行5次循環(huán),此時a=5,b=9,當(dāng)執(zhí)行第6次循環(huán)時,a的值為6但b=11,所以退出循環(huán),程序結(jié)束。三、公共基礎(chǔ)填空題(本題共5題,每題1.0分,共5分。)36、關(guān)系操作的特點(diǎn)是______操作。標(biāo)準(zhǔn)答案:集合知識點(diǎn)解析:在關(guān)系數(shù)據(jù)庫中,把數(shù)據(jù)表示成二維表,每一個二維表稱為關(guān)系,因此關(guān)系其實(shí)是數(shù)據(jù)的集合,對關(guān)系的操作其實(shí)就是對數(shù)據(jù)組成的集合之間的操作。37、按照邏輯結(jié)構(gòu)分類,結(jié)構(gòu)可以分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),棧屬于______。標(biāo)準(zhǔn)答案:線性結(jié)構(gòu)知識點(diǎn)解析:數(shù)據(jù)的邏輯結(jié)構(gòu)分為線性結(jié)構(gòu)和非線性結(jié)構(gòu)。常見的線性結(jié)構(gòu)有線性喪、棧和隊(duì)列等,常見的非線性結(jié)構(gòu)有樹、二叉樹等。38、一個類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個方法提高了軟件的______。標(biāo)準(zhǔn)答案:非線性結(jié)構(gòu)知識點(diǎn)解析:數(shù)據(jù)的存儲結(jié)構(gòu)是指數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)的邏輯結(jié)構(gòu))在計(jì)算機(jī)中的表示,又稱物理結(jié)構(gòu)。數(shù)據(jù)的存儲結(jié)構(gòu)包括順序存儲結(jié)構(gòu)和鏈?zhǔn)酱鎯Y(jié)構(gòu)。數(shù)據(jù)的邏輯結(jié)構(gòu)有線性結(jié)構(gòu)和非線性結(jié)構(gòu)兩大類。39、在面向?qū)ο蟪绦蛟O(shè)計(jì)中,從外面看只能看到對象有外部特征,而不知道也無須知道數(shù)據(jù)的具體結(jié)構(gòu)以及實(shí)現(xiàn)操作的算法,這稱為對象的______。標(biāo)準(zhǔn)答案:封裝性知識點(diǎn)解析:對象具有5個特點(diǎn):標(biāo)識唯一性、分類性、多態(tài)性、封裝性和模塊獨(dú)立性。其中,封裝性是指從外面看只能看到對象的外部特征,對象的內(nèi)部特征即處理能力的實(shí)行和內(nèi)部狀態(tài)。劉外足不可見的,對象的內(nèi)部狀態(tài)只能由其自身改變。40、在一個容量為32的循環(huán)隊(duì)列中,若頭指針front=3,尾指針rear=2,則該循環(huán)隊(duì)列中共有______個元素。標(biāo)準(zhǔn)答案:31知識點(diǎn)解析:設(shè)隊(duì)列容量為m,rear>front,則隊(duì)列中元素個數(shù)為rear-front:rear<front,則隊(duì)列中元素個數(shù)為m+(rear-front)。本題rear<front,則m=32+(2-3)=31。四、填空題(本題共10題,每題1.0分,共10分。)41、多線程是Java語言的______機(jī)制,只能夠處理同步共享數(shù)據(jù)和各種不同的事件。標(biāo)準(zhǔn)答案:并發(fā)知識點(diǎn)解析:本題考查Java語言的特點(diǎn)。Java語言的開發(fā)運(yùn)行環(huán)境都是互聯(lián)網(wǎng),在這種分布式的環(huán)境中,并發(fā)和共事是很常見的事務(wù),要能并行地處理很多事務(wù),就要求Java語言提供一種可靠和高效的機(jī)制,來滿足高并發(fā)事務(wù)處理的需求。多線程很好地解決了網(wǎng)絡(luò)上的瓶頸問題及大星的網(wǎng)絡(luò)訪問問題。42、如果有一個類MyFrame是Frame的子類,但它不能被實(shí)例化,請寫出該類的聲明頭:______。標(biāo)準(zhǔn)答案:abstractclassMyFrameextendsFrame知識點(diǎn)解析:本題考查考生對類聲明的理解。類聲明的格式為[修飾符]class類名[extends父類名][implements類實(shí)現(xiàn)的接口列表]其中[]括起來的內(nèi)容為可選項(xiàng)。關(guān)鍵字class是類定義的開始,類名應(yīng)符合標(biāo)識符命名規(guī)則。關(guān)鍵字extends指明該類是子類,它的父類名緊跟其后,子類與父類之間有繼承關(guān)系。關(guān)鍵字implements指明該類實(shí)現(xiàn)的接口,后跟接口名列表??忌鷳?yīng)注意掌握類聲明的概念,雖然很簡單,但容易漏掉有關(guān)修飾符。題目要求聲明不能被實(shí)例化的類,因此應(yīng)該是一個抽象類,用abstract作為修飾符。43、執(zhí)行下面的賦值語句后,a的值為______。a=Float.valueof("12.34").floatValue();標(biāo)準(zhǔn)答案:a=12.34或12.34知識點(diǎn)解析:本題考查基本類型的類包裝。Float類的valueOf()函數(shù)的原型是:staticFloatvalueOf(Strings它是一種靜態(tài)方法,將字符串的內(nèi)容提取出來轉(zhuǎn)換為Float對象。而floatValue()函數(shù)的原型是:floatfloatValue(),它返回Flo對象的浮點(diǎn)值。本題中,先將字符串"12.34"轉(zhuǎn)換為Float對象,然后再提取該對象的浮點(diǎn)型值,賦給a。44、Java運(yùn)行時系統(tǒng)通過______周期性地釋放無用對象所使用的內(nèi)存,以完成對象的消除。標(biāo)準(zhǔn)答案:垃圾收集知識點(diǎn)解析:本題考查Java的垃圾收集機(jī)制。Java語言中內(nèi)存的分配和釋放工作由自己完成,程序員不必做這些工作,它提供一個系統(tǒng)級的線程,跟蹤每個內(nèi)存的分配,在JVM的空閑處理中,垃圾收集線程將檢查和釋放不再使用的內(nèi)存(即可以被釋放的內(nèi)存)。垃圾收集的過程在Java程序的生存期中是自動的,不需要分配和釋放內(nèi)存,也避免了內(nèi)存泄漏。45、要使處于不同層次,甚至是互不相關(guān)的類可以具有相同的行為采用______。標(biāo)準(zhǔn)答案:接口知識點(diǎn)解析:本題考查接口的概念。接口是一種只含有抽象方法或常量的特殊的抽象類,主要功能有:不管類的層次,可實(shí)現(xiàn)互不相關(guān)的類具有相同的行為;通過接口可以說明多個類所需實(shí)現(xiàn)的方法;通過接口可以了解對象的交互界面,無需了解對象所對應(yīng)的類。通過接口可以為沒有任何關(guān)系的兩個或多個類之間提供相同的行為方式。46、關(guān)于文件名的處理中,測試當(dāng)前文件是否目錄用______函數(shù)。標(biāo)準(zhǔn)答案:booleanlsDirectory()知識點(diǎn)解析:本題

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論