版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
國家二級(JAVA)機(jī)試模擬試卷8(共9套)(共67題)國家二級(JAVA)機(jī)試模擬試卷第1套一、選擇題(本題共40題,每題1.0分,共40分。)1、算法的空間復(fù)雜度是指()。A、算法程序的長度B、算法程序中的指令條數(shù)C、算法程序所占的存儲空間D、算法執(zhí)行過程中所需要的存儲空間標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:算法的空間問題態(tài)度,是指執(zhí)行這個(gè)算法所需的存儲空間。算法所占用的存儲空間包括算法程序所占用的空間、輸入的初始數(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ù)據(jù)元素之間的邏輯關(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ù)處理效率不同。由于鏈表采用鏈武存儲結(jié)構(gòu)。元素的物理順序并不連續(xù).對于插入和刪除無需移動(dòng)元素.很方便。當(dāng)查找元素時(shí)就需要逐個(gè)元素查找.因此查找的時(shí)間相對更長。3、已知一棵二叉樹前序遍歷和中序遍歷分別為ABDE—GCFH和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)l后序遍歷首先訪問根結(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)包括t順序、選擇和重復(fù)(循環(huán)),這三種結(jié)構(gòu)就足以表達(dá)出各種其他形武的結(jié)構(gòu)。6、下列敘述中正確的是()。A、在模塊化程序設(shè)計(jì)中,一個(gè)模塊應(yīng)該盡量多的包括與其他模塊聯(lián)系的信息B、在自頂向下、逐步細(xì)化的設(shè)計(jì)過程中,首先應(yīng)設(shè)計(jì)解決問題的第一個(gè)細(xì)節(jié)C、在模塊化程序設(shè)計(jì)中,一個(gè)模塊內(nèi)部的控制結(jié)構(gòu)也要符合結(jié)構(gòu)化原則D、在程序設(shè)計(jì)過程中,不能同時(shí)采用結(jié)構(gòu)化程序設(shè)計(jì)方法與模塊化程序設(shè)計(jì)方法標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:在模塊化程序設(shè)計(jì)中,模塊之間的聯(lián)系可以通過程序的控制結(jié)構(gòu)來實(shí)現(xiàn)。在自頂向下、逐步細(xì)化的設(shè)計(jì)過程中,首先要考慮全局目標(biāo),而不是細(xì)節(jié)。在程序設(shè)計(jì)中模塊化和結(jié)構(gòu)化可以同時(shí)使用.一個(gè)模塊的內(nèi)部結(jié)構(gòu)也要符合結(jié)構(gòu)化設(shè)計(jì)原則。7、設(shè)計(jì)軟件結(jié)構(gòu)是在軟件生命周期的()。A、軟件定義期B、軟件開發(fā)期C、軟件維護(hù)期D、以上3個(gè)都不是標(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á)到被多個(gè)應(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ù)依賴、數(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個(gè)缺點(diǎn):數(shù)據(jù)冗余大、數(shù)據(jù)的不一致性、程序與數(shù)據(jù)的相互依賴(簡稱為數(shù)據(jù)依賴)。11、如果要求一個(gè)線性表既能較快地查找,又能適應(yīng)動(dòng)態(tài)變化的要求,則可采用的方法是()。A、分塊法B、順序法C、二分法D、散列法標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:分塊查找是將表分成若干塊.分塊的原則是數(shù)據(jù)元素的關(guān)鍵字在塊與塊之間是有序的.而塊內(nèi)元素的關(guān)鍵字是無序的。分塊法可以適應(yīng)動(dòng)態(tài)變化的要求。其他三種是在順序存儲的一組記錄內(nèi)進(jìn)行查找的。12、順序存儲結(jié)構(gòu)的優(yōu)點(diǎn)是()。A、刪除運(yùn)算方便B、存儲空間利用率高C、捅入運(yùn)算方便D、可以方便地運(yùn)用到各種邏輯結(jié)構(gòu)的存儲表中標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:順序結(jié)構(gòu)邏輯上相鄰的結(jié)點(diǎn)物理上也是相鄰的。因此.其存儲密度大.存儲空間利用率高,但插入、刪除運(yùn)算操作不方便。需移動(dòng)大量的結(jié)點(diǎn)。13、用下列4種排序方法,對一個(gè)已排好序(由小到大)的序列進(jìn)行由小到大排序時(shí),選擇()方法最好。A、冒泡排序B、直接選擇排序C、直接插入排序D、歸并排序標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:直接插入排序的基本算法是:當(dāng)插入第i(i>=1)個(gè)對象時(shí),前面的V[0],V[1].….V[i—1]已經(jīng)排好序,這時(shí).用V[i]的關(guān)鍵碼與V[i一1],[i一2]…的關(guān)鍵碼順序進(jìn)行比較,找到插入位置即將V[i]插入,原來位置上的對象則向后移。由此可知.直接插入排序法的關(guān)鍵碼比較次數(shù)與對象的初始排列有關(guān)。在本題中,序列已經(jīng)排好序,所以其i的取值達(dá)到了最大。也就是序列中元素的個(gè)數(shù)。其實(shí)根本無需比較和交換,所以這種方法是最佳的。14、按層次次序?qū)⒁豢糜衝個(gè)結(jié)點(diǎn)的完全二叉樹的所有結(jié)點(diǎn)從1~n編號,當(dāng)i≤n/2時(shí),編號為i的結(jié)點(diǎn)的左子樹的編號是()。A、2i-1B、2iC、2i+1D、不確定標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:完全二叉樹中除最下面一層外,備層都被結(jié)點(diǎn)充滿了,每一層結(jié)點(diǎn)個(gè)數(shù)恰是上一層結(jié)點(diǎn)個(gè)數(shù)的2倍。因此,從一個(gè)結(jié)點(diǎn)的編號就可推知它的雙親及左、右子樹結(jié)點(diǎn)的編號。當(dāng)i≤n/2時(shí),編號為i的結(jié)點(diǎn)的左子樹的編號是2i,否則結(jié)點(diǎn)i沒有左子樹。當(dāng)i≤(n一1)/2時(shí),編號為i的結(jié)點(diǎn)的右子樹的編號是2i+l,否則結(jié)點(diǎn)i沒有右子樹。當(dāng)i≠1時(shí),編號為i的結(jié)點(diǎn)的雙親是結(jié)點(diǎn)i/2。15、對于給出的一組權(quán)w={10,12.16,21。30).通過霍夫曼算法求出的擴(kuò)充二叉樹的帶權(quán)外部路徑長度為()。A、89B、189C、200D、300標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:其帶權(quán)外部路徑長度為;2×16+2×2l+2×30+3×10+3×12=200。16、JDK中,用()命令對其源文件進(jìn)行編譯,生成字節(jié)碼文件。A、jflva.exeB、javaC、exe.C.javado.c.exeD、javap.exe標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查JDK實(shí)用工具的使用。選項(xiàng)A錯(cuò)誤,java.exe是Java語言解釋器,直接從類文件執(zhí)行Java應(yīng)用程序字節(jié)代碼,可接受elass文件并啟動(dòng)Java虛擬機(jī)執(zhí)行;選項(xiàng)B正確,javae.exe是.Java語言編譯器,將Java源代碼轉(zhuǎn)換成字節(jié)碼;選項(xiàng)C錯(cuò)誤,javadoe.exe是根據(jù)Java源代碼及說明語句生成HTML,文檔;選項(xiàng)D錯(cuò)誤.javap.exe是反匯編器,顯示編譯類文件中的可訪問功能和數(shù)據(jù),同時(shí)顯示字節(jié)代碼含義。17、以下敘述中不屬于Java語言特點(diǎn)的是()。A、面向?qū)ο驜、可移植性C、多線程D、宏定義標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查Java語言的基本特點(diǎn)。選項(xiàng)A正確.Java最大的特點(diǎn)之一是跨平臺、面向?qū)ο?;選項(xiàng)B正確,解釋同A}選項(xiàng)C正確,多線程是Java的一個(gè)主要特性,它使可執(zhí)行程序具有同時(shí)保持幾個(gè)線程執(zhí)行的能力;選項(xiàng)D錯(cuò)誤,Java不支持宏定義。18、在Java語言中,封閉是借助于()實(shí)現(xiàn)的。A、對象B、類C、數(shù)組D、成員標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:Java是一個(gè)完全面向?qū)ο蟮恼Z言。利用類把對象的屬性和方法封裝在一起,只對外界提供有限的接口。19、Java對文件類提供了許多操作方法.能獲得文件對象父路徑名的方法是()。A、getAbsolutePath()B、getParentFile()C、getAbsoluteFile()D、getName()標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查File類的基本知識。File類是通過文件名列表來描述一個(gè)文件對象的屬性,通過File類提供的方法??梢垣@得文件的名稱、長度、所有路徑等信息,還可以改變文件的名稱、刪除文件等。20、下列各項(xiàng)中屬于合法標(biāo)識符的是()。A、myid/2B、一bvoidC、一5D、vacl標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:Java語言的標(biāo)識符是以字母、下畫線和符號$為首字符的字符串。首字符后面可以跟字母、下畫線、$和數(shù)字,且標(biāo)識符是區(qū)分大小寫的.標(biāo)識符的字符數(shù)沒有限制。A選項(xiàng)中含有非法符號”/”,故是錯(cuò)誤的:B選項(xiàng)是以符號”+”開始的字符串也不符合規(guī)則;同理,C選項(xiàng)也是錯(cuò)誤的。21、下列各選項(xiàng)中屬于Java保留字的是()。A、TRUEB、NULLC、假D、null標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:在Java中.常量null、false、true都是小寫的。所以A、B和C選項(xiàng)中的字符串都不是Java的保留字。22、下列各項(xiàng)中代表八進(jìn)制整數(shù)的是()。A、0XA6B、144C、1840D、一1E3標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:Java語言中八進(jìn)制整數(shù)為整型常量中的一種,以0開始,后加數(shù)字0~7組成。故只有B選項(xiàng)0144符合要求。23、下列代碼的執(zhí)行結(jié)果是()。publicclassTest{publicstaticvoidmain(Stringargs[]){System.out.println(5/2);System.out.println(100%3.0)}}A、2和1B、2和1.0C、2.5和1D、2.5和1.0標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:由于5和2都是int型,所以語句Sys—tern.oul.println(5/2)的輸出為2。由于操作數(shù)3.0為douh—le型(Java語盲中浮點(diǎn)數(shù)的默認(rèn)值為double型),所以結(jié)果為double型,即1.0。24、char類型被封裝在()中。A、java.1ang.IntegerB、java.1ang.CharC、java.1ang.BooleanD、java.1ang.Character標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:Java語言中,char類型被封裝在java.1ang.Character中。25、下面代碼段的輸出是()。if(58L7)0&&5|2)system.out.println(“true”);A、編譯出錯(cuò)B、5752C、真D、無任何輸出標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:本題考查對位運(yùn)算符和邏輯運(yùn)算符的理解。位運(yùn)算符”&”和"|"用于按位將兩個(gè)數(shù)進(jìn)行與和或的操作,兩個(gè)操作數(shù)可以是整型、字節(jié)型、長整型和短整型,但不能是浮點(diǎn)型數(shù)據(jù)。邏輯運(yùn)算符&&只能對兩個(gè)布爾型的數(shù)據(jù)進(jìn)行運(yùn)算。返回的結(jié)果也是布爾型的。26、下列關(guān)于內(nèi)部類的說法。正確的是()。A、內(nèi)部類可以與它包含的類名相同B、內(nèi)部類只能使用它所在類的靜態(tài)成員變量,不能使用它所在類的方法中的局部變量C、內(nèi)部類可以用abstract修飾定義為抽象類。不能用private或protected定義D、外部使用內(nèi)部類時(shí)必須給出類的全名標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查內(nèi)部類的概念。在一個(gè)類的內(nèi)部嵌套定義的類稱為內(nèi)部類。它的類名在定義它的類或程序段中或在表達(dá)武內(nèi)部可以匿名使用,外部使用它時(shí)必須給出類的全名.所以選項(xiàng)D說法正確;內(nèi)部類的類名不允許與它包含的類名相同,選項(xiàng)A說法錯(cuò)誤I內(nèi)部類可以使用它所在類的靜態(tài)成員變量和實(shí)例成員變量,也可以使用它所在類的方法中的局部變量,選項(xiàng)B說法錯(cuò)誤l內(nèi)部類不僅可以用abstract修飾定義為抽象類,也可用private或protec—ted定義.選項(xiàng)c說法錯(cuò)誤。同時(shí)還要注意,內(nèi)部類可作為其他類的成員,而且可訪問它所在類的成員,除static內(nèi)部類外,不能在類中聲明static成員。27、定義一個(gè)表示10個(gè)值為null的字符串?dāng)?shù)組,下面選項(xiàng)正確的是()。A、String[]a;B、Stringa[];C、chara[10][];D、Stringa[]=newString[10];標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查字符串?dāng)?shù)組變量的聲明。選項(xiàng)A和選項(xiàng)B的效果是一樣的,都是用來定義一個(gè)字符串?dāng)?shù)組,但沒有指明數(shù)組個(gè)數(shù)。不滿足題目要求;選項(xiàng)C是一個(gè)二維的字符數(shù)組,在C語言中,一個(gè)二維的字符數(shù)組就可以表示一個(gè)一維的字符串?dāng)?shù)組,而在.1ava中,字符char是基本類型.字符串string則是以對象的形式來表示的;選項(xiàng)D正確,它定義了一個(gè)含有10個(gè)元素的字符串?dāng)?shù)組,如果沒有給字符串教組賦值,則默認(rèn)為null。28、有一個(gè)接口定義如下,下列選項(xiàng)中實(shí)現(xiàn)了該接口并且不是抽象的是()。interfaceA{intmethodl(inti);intmethod2(intj);}A、classBimplementsAB、classB{{intmethodl(){)intmethodl(inti){)intmethod2()()intmethod2(intj){)}}C、classBimplementsAD、classBextendsA{{intmethodl(inti){)intmethodl(inti){)intmethod2(intj){)intmethod2(intj){))}標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查在Java中接口的實(shí)現(xiàn)。接口是一種只含有抽象方法或變量的特殊的抽象類。在類的聲明中用implements子句來表示一個(gè)類使用某個(gè)接口。選項(xiàng)A在方法內(nèi)沒有參數(shù)值;選項(xiàng)B只是定義了一個(gè)類.并沒有實(shí)現(xiàn)與A的接口;選項(xiàng)C中使用關(guān)鍵字implements實(shí)現(xiàn)了該接口,這里接口中的方法并沒有使用abstract修飾,所以不是抽象的;選項(xiàng)D中extends是用來繼承父類的,而A并不是一個(gè)類,不能用extends。29、下面程序段的輸出結(jié)果是()。classBase{inti;Base(){add(1);}voidadd(intv){i+=V;}voidprint(){System.out.println(i);}}classExtensionextendsBase{Extension(){add(2);}voidadd(intv){i+=v*2l}}publicclassTest{publicstaticvoidmain(Stringargs[]){bogo(newExtension());}staticvoidbogo(Baseb){b.a(chǎn)dd(8);b.print();}}A、9B、18C、20D、22標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查繼承和構(gòu)造函數(shù)的用法。首先要明確對一個(gè)類的繼承是指在父類的基礎(chǔ)上構(gòu)建了一個(gè)子類,子類繼承了父類的方法和狀態(tài)。題目所給程序段創(chuàng)建的是Extension類的實(shí)例,在運(yùn)行時(shí),從main()函數(shù)進(jìn)入程序.所有調(diào)用add()方法的過程將始終和Extension類的add()方法動(dòng)態(tài)綁定。初始值:i=0;創(chuàng)建實(shí)例newExtension();先調(diào)用父類的默認(rèn)構(gòu)造函數(shù).Base(),并在父類的默認(rèn)構(gòu)造函數(shù)中執(zhí)行add(1)。i=0+1×2,所以i=2,再調(diào)用子類的默認(rèn)構(gòu)造函數(shù)Extension(),子類的默認(rèn)構(gòu)造函數(shù)中執(zhí)行add(2),i=2+2×2,所以i=6;執(zhí)行add(8);i=6+8×2.因此,最終i=22,正確答案為選項(xiàng)D。30、通常我們使用()方法來為一個(gè)部件注冊事件監(jiān)聽器。A、add×××ListenerB、×××ListenerC、Listener×××D、×××Listeneradd標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:本題考查事件監(jiān)聽器的概念。每類事件都有對應(yīng)的事件監(jiān)聽器,監(jiān)聽器是接口。根據(jù)動(dòng)作來定義方法。AWT的構(gòu)件類中提供注冊和注銷監(jiān)聽器的方法。注冊監(jiān)聽器:publicvoidadd<;istenerType>(listener。)l注銷監(jiān)聽器:publicvoidremove(listener)。由此可見,選項(xiàng)A正確。31、下列的()原始類型在使用流時(shí)可以互換。A、byte和booleanB、char和intC、byte和charD、String和char標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查Java語言中字節(jié)類型的概念。在Java語言中.byte是字節(jié)類型,用1字節(jié)表示;boolean是布爾類型,用true和false表示,它們的表示方法并不一樣。也不提供它們之間的轉(zhuǎn)換,選項(xiàng)A錯(cuò)誤。Java內(nèi)部用整數(shù)來表示char,通常可以在方法調(diào)用和其他語句中互換使用char-和int,選項(xiàng)B正確。char。用2字節(jié)表示,byte字節(jié)類型用1字節(jié)表示,Java內(nèi)部也不允許互換使用它們,選項(xiàng)C錯(cuò)誤。String在Java語言中是一個(gè)類,它提供對字符串的一系列操作,而char是Jflva語言中的一個(gè)基本類型,它不是一個(gè)類.兩者有本質(zhì)的區(qū)別,故而它們是不能互換使用的,選項(xiàng)D錯(cuò)誤。需要注意的是,在Java語言中提供的類都是以大寫字母開頭,基本類型都用小寫字母表示。32、下列關(guān)于HTML標(biāo)記的說法。正確的是()。A、URLgetDocumentBase()返回Applet主類的URLB、URLgetCOdeBase()返回包含Applet的HTML文件的URLC、在HTML中不說明StringgetParameter(stringname)的參數(shù),該方法將返回“0”D、HTML標(biāo)記方法用于獲取HTML文件中關(guān)于Ap—plet的信息標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查.Applet中HTML標(biāo)記方法。URLgelDocumentBase()返回包含Applet的HTML文件的URL,而不是返回Applet主類的URL,選項(xiàng)A錯(cuò)誤。LJRLgelC()deBase()返回Applet主類的LIRL,而不是返回包含Applet的HTML文件的URL選項(xiàng)B錯(cuò)誤。StringgetParameter(stringname)返回定義在HTML文件的指定參數(shù).如果指定參數(shù)在HTML中無說明,該方法將返回”null”,而不是”0”,因此選項(xiàng)C錯(cuò)誤。33、下列關(guān)于Applet的說法,正確的是()。A、它們能讀/寫用戶的文件系統(tǒng)B、它們能與提供包含小程序的網(wǎng)頁的站點(diǎn)之內(nèi)的Internet站點(diǎn)聯(lián)系C、它們能在閱讀者的系統(tǒng)上運(yùn)行任何程序D、它們能加載存儲在用戶系統(tǒng)上的程序標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查Java小程序(Applet)安全限制的概念。因?yàn)镴flva小程序運(yùn)行在Web用戶的系統(tǒng)上,所以對小程序所能完成的工作有一些嚴(yán)格的限制。它們不能讀/寫用戶的文件系統(tǒng),選項(xiàng)A說法錯(cuò)誤。它們不能與提供包含小程序的網(wǎng)頁的站點(diǎn)之外的Internet站點(diǎn)聯(lián)系.選項(xiàng)B說法正確。它們不能在閱讀者的系統(tǒng)上運(yùn)行任何程序,選項(xiàng)C說法錯(cuò)誤。它們不能加載存儲在用戶系統(tǒng)上的程序,如可執(zhí)行程序和共享庫。所有這些規(guī)則適用于運(yùn)行在瀏覽器下的Javfl小程序,選項(xiàng)D說法錯(cuò)誤。34、resume()方法恢復(fù)()的執(zhí)行。A、通過調(diào)用stop()方法而停止的線程B、通過調(diào)用sleep()方法而停止運(yùn)行的線程C、通過調(diào)用wait()方法而停止運(yùn)行的線程D、通過調(diào)用suspend()方法而停止運(yùn)行的線程標(biāo)準(zhǔn)答案:D知識點(diǎn)解析:本題考查resume()方法的使用。在Thread的API文檔中的說明是該方法恢復(fù)被掛起(SUS—pende())的線程。該方法首先調(diào)用該線程的無參的check—Access()方法。這可能在當(dāng)前線程上拋出SecurityException異常,如果該線程是活著的(alive)但被掛起(suspend()),它被恢復(fù)并繼續(xù)它的執(zhí)行進(jìn)程。35、下列方法中能完成主類實(shí)例初始化工作的是()。A、start()B、stop()C、init()D、paint()標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查對Applet必須要重載的幾個(gè)方法的理解。選項(xiàng)A錯(cuò)誤,start()方法使得程序從初始態(tài)進(jìn)入運(yùn)行態(tài),當(dāng)瀏覽器從圖標(biāo)狀態(tài)恢復(fù)為窗口時(shí).或者當(dāng)用戶離開包含Applet的主頁后又再返回時(shí),系統(tǒng)都會(huì)自動(dòng)再執(zhí)行一遍start()方法;選項(xiàng)B錯(cuò)誤,stop()方法是和start()方法相對應(yīng)的,當(dāng)瀏覽器變成圖標(biāo)或者是用戶離開Applet所在頁面時(shí),瀏覽器都會(huì)調(diào)用stop()方法,該方法也是可以被多次調(diào)用的;選項(xiàng)C正確.當(dāng)創(chuàng)建JavaApplet且第一次使用支持.Java的瀏覽器載入該Applet時(shí),就會(huì)執(zhí)行init()方法,通常在這方法中執(zhí)行一次性的初始化操作;選項(xiàng)D錯(cuò)誤,paint()方法是畫圖時(shí)必須要重載的方法。36、下面的()關(guān)鍵字通常用來對對象加鎖,從而使得對對象的訪問是排他的。A、serializeB、transientC、synchronizedD、static標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查.1ava中對泉加鎖的概念。Java是多線程的語言,多個(gè)線程可以”同時(shí)”訪問同一數(shù)據(jù)區(qū).而在處理某些數(shù)據(jù)時(shí)不希望其他的線程修改那些數(shù)據(jù)的值或者某些操作是不可打斷的。要做到這個(gè),可以使用synchro—nized關(guān)鍵字聲明這一點(diǎn)。37、下列程序中.若從鍵盤中輸入的是大寫字母@C@則翟序輸出的結(jié)果是()。Importjava.io.*;publicclassExam{publicstaticvoidmain(Stringargs[]){inteh=0;System.out.println(“輸入一個(gè)字符:”);try{ch=System.in.read();charch—A=‘A’ch—Z=‘Z’;intdelta=c=(int)ch—A+(int)ch—Z—ch;System.OUt.println(”編碼后的字符為:“+(char)deltac);}catch(IOExceptione){e.printStackTrace();}}}A、CB、YC、XD、字母c的ASCII碼的整型值標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查考生閱讀Java程序的能力。當(dāng)使用h=System.in.read()語句從鍵盤讀入大寫字母C賦給ch.此時(shí)ch值為67,也就是字母C的ASCII值。語句(int)ch—A+(int)ch—Z—ch結(jié)果為88.ASCII碼中的88相當(dāng)于字母X,所以輸出為X,選項(xiàng)C正確。38、下面的程序執(zhí)行后,屏幕上顯示的應(yīng)是()。publicclassExam{publicstaticvoidmain(String[]args){charcharl[]={’t’.…’e’…’s’,…’t’};charchar2[]={’t’,…’e’.’s’,’t’.’l’};Stringsl=newString(charl);Strings2=newString(char2,0.4);System.out.println(s1.equals(s2));}}A、trueB、假C、testD、編譯錯(cuò)誤標(biāo)準(zhǔn)答案:A知識點(diǎn)解析:本題考查考生對字符數(shù)組的理解。首先可以通過字符數(shù)組來生成一個(gè)字符串對象:String(char[]value)和String(char[]value,intstartIndex,intnum(;hat’s),其中,star-tIndex指定字符串在數(shù)組中的起始下標(biāo).hum—Char.s表示字符個(gè)數(shù)。然后再測試字符串是否相等,可調(diào)用equals()方法,兩個(gè)字符串相等則返回true,否則返回false。題目中sl和s2都是”test”,所以最后返回是true。選項(xiàng)A正確。39、以下()命令能為遠(yuǎn)程對象生成stub和skeleton。A、rmiregistryB、serialverC、rmicD、rmid標(biāo)準(zhǔn)答案:C知識點(diǎn)解析:本題考查J2SDK的RMI命令。rmnreg—istry命令是在當(dāng)前主機(jī)的指定端口上啟動(dòng)遠(yuǎn)程對象注冊服務(wù)程序;set。ialver命令是返回serialVersion[JID的值;rmic:命令為遠(yuǎn)程對象生成stub和skeleton;rmid命令可以激活系統(tǒng)守候進(jìn)程,以便能夠在Java虛擬機(jī)上注冊和激活對象。40、Java程序與數(shù)據(jù)庫的連接機(jī)制是()。A、()DBCB、JDBCC、ODBCAPID、SQL/CLI標(biāo)準(zhǔn)答案:B知識點(diǎn)解析:本題考查Java程序與數(shù)據(jù)庫的連接。JDBC(JavaDataBaseConnectivity)是,Java程序與數(shù)據(jù)庫連接的一種機(jī)制。在Java虛擬機(jī)中有個(gè)特殊模塊JDBCDriv—erManager,既負(fù)責(zé)管理針對各種類型數(shù)據(jù)庫軟件的JDBC驅(qū)動(dòng)程序,也負(fù)責(zé)和用戶應(yīng)用程序交互。二、基本操作題(本題共1題,每題1.0分,共1分。)41、本題中定義了一個(gè)長度為20的整數(shù)數(shù)組,然后將1~20分別賦給數(shù)組元素,計(jì)算該數(shù)組中所有下標(biāo)為奇數(shù)的元素的和。publicclassjavai{publicstaticvoidmain(Stringargs[]){intsum;——;intarray;ist[]=newintV20];for(inti=0;i<=19li++)arrayListEi]=i+1;intpos=0;while(pos<20){i“——)sum=sum+arrayListEpos];——;}System.out.println(“sum=”+sum);}}標(biāo)準(zhǔn)答案:第1處:sum=0第2處:pos%2一=1或pos%21==0第3處:pos十+或pos+=1或pos=pos+1知識點(diǎn)解析:第1處給整型變量sum賦初值;第2處為判斷數(shù)組中元素下標(biāo)為奇數(shù)的條件;第3處是元素下標(biāo)加1繼續(xù)遍歷。三、簡單應(yīng)用題(本題共1題,每題1.0分,共1分。)42、本題是設(shè)計(jì)一個(gè)窗體.窗口的背景色為系統(tǒng)桌面的顏色,在窗l(fā)Zl中分別畫了空心和實(shí)心的黑色矩形、深灰色圓角矩形和淺灰色橢圓形.并且畫了白色粗體的“Java二級考試!”字符串。Importjava.a(chǎn)wt.*;Importjavax.swing.*;Publicclassjava2{Publicstaticvoidmain(string[]args){Fillframeframe=newfillfra、me();Frame.setdefauItcloseoperation(jframe.exit__on__close);Frame.show();}}Classfillframeextendsjframe{Publicfillframe(){Settitle(“simple”);Setsize(width,height);Fillpanelpanel=newfillpanel();Panel.setbackground(systemcolor.desktop);Containercontentpane=getcontentpane();Contentpane.a(chǎn)dd(panel);}Publicstaticfinalintwidth=400;Publicstaticfinalintwidth=250;}Classfillpanelextendsjpanel{Publicvoidpaintcomponent(graphicsg){_____;g.setcolor(newcolor(10,10.10));g.drawreet(10,10.100,30);g.setcolor(newcolor(100.100,100));g.drawroundrect(150,10,100.30,15,15);g.setcolor(newcolor(150,150.150));g.drawoval(280.10,80,30);g.setcolor(newcolor(10,10,10));g.fillreet(10,110,100,30);g.setcolor(newcolor(100,100,100));g.drawroundrect(150.110.100,30,15.15);g.setcolor(newcolor(150,150.150));g.filloval(280,110,80,30);g.setcolor(color.white);fontf=newfont(“宋體”.__,20);g.setfont(f);g.drawstring(“java二級考試!”,150,200);}}標(biāo)準(zhǔn)答案:第1處:super.paintComponent(g);第2處:Font.BOLD知識點(diǎn)解析:第1處是通過super語句調(diào)用父類的構(gòu)造方法paintComponent(g)。第2處是通過字體對象的構(gòu)造函數(shù),設(shè)置“.Java二級考試!”格式.題目要求是粗體,所以大Font.BOLD。四、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)43、本題的功能是監(jiān)聽對于列表項(xiàng)的操作。窗口中有一個(gè)列表和三個(gè)按鈕“添加”、“刪除”和“關(guān)閉”。單擊“添加”按鈕.則會(huì)在當(dāng)前所選列表項(xiàng)后添加一個(gè)名為“新增表項(xiàng)”的列表項(xiàng)。同時(shí)后臺輸入列表中的表項(xiàng)數(shù)量。單擊“刪除”按鈕后,如果未選中表項(xiàng),則彈出提示消息框“請選擇表項(xiàng)”。否則將選中的表項(xiàng)刪除,同時(shí)后臺輸出刪除表項(xiàng)的內(nèi)容和列表中的表項(xiàng)數(shù)量。單擊“關(guān)閉”按鈕退出程序。importjava.a(chǎn)wt.*;importjflVfl.a(chǎn)wt.event.*;importjavax.swing.JOptionPane;publicClaSSjava3{publicstaticvoidmain(Stringargs[]){finalFramefrmFrame=newFrame();PanelpnlPanell=newPanel();PanelpnlPanel2=newPanel();finalListlstList=newList(8);for(inti=0;i<10,i++){StringstrName=“表項(xiàng)”+(newInteger(i+1)).toString();lstList.a(chǎn)dd(strName);}ButtonbtnButtonl=newButton(“添加”);ButtonbtnButton2=newButton(“刪除”),ButtonbtnButton3=newButton(“關(guān)閉”);btnButtonl.a(chǎn)ddActionl.istener(newActionListen—er(){publicvoidactionPerformed(ActionEvente){lstList.a(chǎn)dd(”新增表項(xiàng)”,lstList.getSelected()+1);System.Out.println(”列表中的表項(xiàng)數(shù)量:”+lstList.gethemCount());}));btnButton2.a(chǎn)ddActionListener(newAction;isten—er(){publicvoidactionPerformed(ActionEvente){if(istList.getSelected()==null){JOptionPane.showMessageDialog(frmFrame,”請選擇表項(xiàng)”);return;}System.out.println(“刪除表項(xiàng)的內(nèi)容:”+lstList.getSelectedhem());lstList.delete(IstList.getSlecetdIndex());System.Out.println(”列表中的表項(xiàng)數(shù)量:”+lstList.gethemCount());)});btnButton3.a(chǎn)ddActionListener(newActionListen—er(){publicvoidactionPerformed(ActionEvente){System.exit(0);}));pnlPanell.a(chǎn)dd(1stList);pnlPanel2.a(chǎn)dd(btnButtonl);pnlPanel2.a(chǎn)dd(btnButton2);pnlPanel2.a(chǎn)dd(btnButton3);frmFrame.a(chǎn)dd(“North”.pnlPanell);frmFrame.a(chǎn)dd(“South”,pnlPanel2);frmFrame.setTitle(“java3”);frmFrame.pack();frmFrame.show(),}}標(biāo)準(zhǔn)答案:第1處;lstList.getSelectedlndex()+1第2處;lstList.getSelectedhem()==null第3處:lstList.remove(1stList.getselectedIndex())知識點(diǎn)解析:第1處是從當(dāng)前所選列表項(xiàng)向后移一位;第2處是表示當(dāng)前未選中表項(xiàng)即為null!第3處是清除所選項(xiàng)目的索引。國家二級(JAVA)機(jī)試模擬試卷第2套一、基本操作題(本題共1題,每題1.0分,共1分。)1、下面程序執(zhí)行結(jié)果為:1×1=12×1=22×2=43×1=33×2=63×3=99×1=99×2=189×3=279×4=369×5=459×6=549×7=639×8=729×9=81請?jiān)诿織l橫線處填寫一個(gè)語句,使程序的功能完整。注意:請勿改動(dòng)main()主方法和其他已有的語句內(nèi)容,僅在橫線處填入適當(dāng)?shù)恼Z句。publicclassForLoopStatement{publicstaticvoidmain(Stringargs[]){intm,n;for(m=1;m<10;______)______System.out.print(m+"*"+n+"="+m*n+"");______}}標(biāo)準(zhǔn)答案:m++for(n=1;n<=m;n++)System.out.println();知識點(diǎn)解析:本題考查Java的循環(huán)語句。本題中m++;語句是使循環(huán)變量的值遞增1,第一個(gè)for(m=1;m<10;m++)循環(huán)語句是用來控制乘法表的行輸出,那么還要用一個(gè)for循環(huán)語句來實(shí)現(xiàn)控制列的輸出。這個(gè)列的變量n要注意,它總是小于等于m的,所以應(yīng)有for(n=1;n<=m;n++);語句System.out.println();是用來換行輸出。二、簡單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、請完成下列Java程序。程序的功能是利用迭代法求一個(gè)數(shù)的平方根(求平方根的迭代公式為:Xn+1=1/2(Xn+a/Xn)).注意:請勿改動(dòng)main()主方法和其他已有的語句內(nèi)容,僅在下劃線處填入適當(dāng)?shù)恼Z句。publicclassPingFangGen{publicstaticvoidmain(Stringargs[]){System.out.println(Math,sqrt(2.0));}staticdoublesqrt(______){doublex=1.0do{_______}while(Math.abs(x*x-a)/a>le-6)returnx;}}標(biāo)準(zhǔn)答案:doubleax=(x+a/x);知識點(diǎn)解析:本題主要考查do---while循環(huán)語句及Java的基本運(yùn)算。do---while循環(huán)又稱“直到型”循環(huán),它的一般格式為:[初始化部分]do{循環(huán)體部分;迭代部分;}while(判斷部分);。說明如下:(1)do---while結(jié)構(gòu)首先執(zhí)行循環(huán)體,然后計(jì)算終止條件,若結(jié)果為true,則循環(huán)執(zhí)行大括號中的語句或代碼塊,直到布爾表達(dá)式的結(jié)果為false。(2)與while結(jié)構(gòu)不同的是,do---while結(jié)構(gòu)的循環(huán)至少被執(zhí)行一次,這是“直到型”循環(huán)的特點(diǎn)。在本題中,doublea語句是定義一個(gè)double型變量a,x=(x+a/x);語句的功能是迭代求出被開平方的變量。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、下面是一個(gè)Applet程序,其功能是接收用戶輸入的兩個(gè)整數(shù),比較它們的大小,并在用戶按下“比較大小”按鈕后,將Applet中顯示的“請先輸入兩個(gè)待比較的整數(shù)”,改為“兩個(gè)整數(shù)中最大值是:x”,x是兩個(gè)數(shù)中的最大值。請改正程序中的錯(cuò)誤(有下劃線的語句),使程序能輸出正確的結(jié)果。注意:不改動(dòng)程序的結(jié)構(gòu),不得增行或刪行。importjava.applet.*;importjava.awt.*importjava.awt.event.*;/*<appletcode=LookForMaxwidth=800height=400></applet>*/publicclassLookForMaxextendsAppletimplementsActionListener{Labelresult;TextFieldin1,in2Buttonbtn;inta=0,b=0,max=0;publicvoidinit(){result=newLabel("請先輸入兩個(gè)待比較的整數(shù)");in1=newTextField(5);in2=newTextField(5)btn=newButton("比較大小");add(in1);add(in2)add(btn)add(result)btn.addActionListener(super)}publicvoidactionPerformed(ActionEvente){a=Integer.parseInt(in1);b=Integer.parselnt(in2);if(a>b)max=a;elsemax=b;result.setText("兩個(gè)數(shù)中最大值是:"+max);}}LookFormax.html;<html><head><title>ASimpleProgram</title></head><body><appletcode="LookForMax,class"width800height=400></applet></body></html>標(biāo)準(zhǔn)答案:thisin1.getText()in2.getText()知識點(diǎn)解析:本題主要考查JavaApplet程序的編寫、java.a(chǎn)wt包的基本組件的使用及super和this關(guān)鍵字的使用。Applet(小程序)是一種很重要的Java程序,是工作在Internet的瀏覽器上或借助JDK中的appletviewer來工作的Java程序。編寫Applet小程序必須要用到j(luò)ava.a(chǎn)pplet包中的Applet類。java.a(chǎn)pplet.Applet是java.a(chǎn)wt.Panel的子類。在本題中,publicclassLookForMaxextendsAppletimplementsActionListener語句的功能是聲明一個(gè)繼承Applet類且實(shí)現(xiàn)ActionListener接口的類LookForMax來實(shí)現(xiàn)程序功能,btn.a(chǎn)ddActionListener(this);語句的功能是為按鈕btn對象注冊一個(gè)事件監(jiān)聽器this(this是指當(dāng)前LookForMax的對象),a=Integer.parseInt(in1.getText());和b=Integer.parseInt(in2.getText());語句的功能是把從文本框in1和in2獲得的字符型數(shù)據(jù)轉(zhuǎn)換成基本整型數(shù)據(jù),并把這兩個(gè)值分別賦給變量a和b。國家二級(JAVA)機(jī)試模擬試卷第3套一、基本操作題(本題共1題,每題1.0分,共1分。)1、程序如下:∥計(jì)算兩個(gè)整數(shù)的乘法Java_1.javaimportjavax,swing.JOptionPane;publicclassJava_1{publicstaticvoidmain(Stringargs[]){intx,y,result;StringxVal,yVal;xVal=JOptionPane.showInputDialog("輸入第1個(gè)整數(shù):");yVal=JOptionPane.showInputDialog("輸入第2個(gè)整數(shù):");∥**********Found**********x=Integer.parseInt((1));y=Integer.parseInt(yVal);result=x*y;∥**********Found**********JOptionPane.(2)(null,"兩個(gè)數(shù)的積:"+result);System.exit(0);}}標(biāo)準(zhǔn)答案:1.xVal2.showMessageDialog知識點(diǎn)解析:本題首先要將用戶輸入的數(shù)字字符轉(zhuǎn)換成int型的十進(jìn)制數(shù),所以調(diào)用parseInt(Stringstr)方法將xVal和yVal轉(zhuǎn)換成int型,所以第一處應(yīng)填入“xVal”。JOption-Pane.showMessageDialog()方法用于顯示消息對話框,所以第二處應(yīng)填入“ShowMessageDialog”。二、簡單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、程序如下:∥Java_2.javapublicclassJava_2{publicstaticvoidmain(String[]args){int[][]aMatrix={(1,1,1,1},{2,2,2,2},{3,3,3,3},{4,4,4,4}};inti=0;∥循環(huán)變量intj=0;∥循環(huán)變量∥**********Found**********for(i=0;i<(3);i++){for(j=0;j<aMatrix[i],length;j++){∥**********Found**********System.out.print((4)+"");{System.out.println();}}}標(biāo)準(zhǔn)答案:3.aMatrix.length4.aMatrix[i][j]知識點(diǎn)解析:程序中,變量i索引數(shù)組中元素的行號,變量j索引每一行中元素的列號。在外層循環(huán)中,i不能超過二維數(shù)組的行數(shù),即i要小于數(shù)組的長度,所以i<aM-atrix.length;第二處要求輸出元素,對于二維數(shù)組索引而言,應(yīng)表示為aMatrix[i][j],即第i行第j列位置上的元素。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、程序如下:∥Java_3.javaimportjava.awt.*;importjavax,swing.*;∥**********Found**********publicclassJava_3(5)JApplet{∥**********Found**********publicvoid(6)(){ContainercontentPane=getContentPane();JLabellabel=newJLabel("Java的誕生是對傳統(tǒng)計(jì)算模式的挑戰(zhàn)!",SwingConstants.CENTER);∥**********Found**********contentPane,add((7));}}∥Java_3.html<html><appletcode="Java_3.class"width=300height=50></applet></html>標(biāo)準(zhǔn)答案:5.extends6.init7.label知識點(diǎn)解析:很顯然,Java_3類繼承自JApplet類,所以第一處應(yīng)填入“extends”,表明Java_3與JApplet之間的繼承關(guān)系。對于Applet的定義接下來要進(jìn)行初始化工作,即重載init()方法,所以第二處應(yīng)填入“init’’。第三處要在頂層容器的內(nèi)容面板中添加一個(gè)定義好的JLabel,所以應(yīng)填入“l(fā)abel”。國家二級(JAVA)機(jī)試模擬試卷第4套一、基本操作題(本題共1題,每題1.0分,共1分。)1、請完善程序(程序文件名:Java_1.java)并進(jìn)行調(diào)試。請?jiān)谙庐嬀€處填入正確內(nèi)容,然后刪除下畫線。請勿刪除注釋行和其他已有的語句內(nèi)容。[題目要求]完成程序并運(yùn)行,得到的結(jié)果如下圖所示。源程序:importjavax.swing.JOptionPane;publicclassJava_1{publicstaticvoidmain(Stringargs[]){Stringoutput="";for(intcount=1;count<=10;(1)){if(count(2))continue;//當(dāng)count為5時(shí)跳過循環(huán)中的剩余代碼output+=count+"":}output+="\nUsedcontinuetoskipprinting5":JOptionPane.showMessageDialog(null,output);System.exit(0);}}標(biāo)準(zhǔn)答案:count++==5知識點(diǎn)解析:當(dāng)count為5時(shí)跳過循環(huán),執(zhí)行下一個(gè)循環(huán),所以判斷條件為count是否等于5,Java中用“==”表示判斷是否相等,所以語句為count==5。[程序解析]本程序主要考查for循環(huán)中的強(qiáng)制跳轉(zhuǎn)語句。強(qiáng)制跳轉(zhuǎn)語句有continue和break兩種。break語句用來退出循環(huán),并從緊跟該循環(huán)語句的第一條語句處開始執(zhí)行;而continue語句則跳過循環(huán)體中下面尚未執(zhí)行的語句,回到循環(huán)體的開始繼續(xù)下一輪的循環(huán)。二、簡單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、請完善程序(程序文件名:Java_2.java)并進(jìn)行調(diào)試。請?jiān)谙庐嬀€處填入正確內(nèi)容,然后刪除下畫線。請勿刪除注釋行和其他已有的語句內(nèi)容。[題目要求]打開一個(gè)文本文件test.txt,統(tǒng)計(jì)該文件中包含的數(shù)字的個(gè)數(shù)與英文字母的個(gè)數(shù)(忽略大小寫)。例如test.txt文本文件中包含的內(nèi)容為“123abeDEF99G”,則程序的輸出結(jié)果如下:數(shù)字?jǐn)?shù)是5,字母數(shù)是7源程序:importjava.io.*:publicclassJava_2{publicstaticvoidmain(String[]args){bytebuf[]=newbyte[5];intlen=0,c1=0,c2=0;(1){FileInputStreamin=(2)("test.txt");while((len=in.read(bur,0.5))>0){for(inti=0;i<len;i++)if(buf[i]>=’0’&&buf[i]<=’9’)cl++;elseif((bur[i]>=’a’&&buf[i]<=’z’)||buf[i]>=’A’&&buf[i]<=’z’)c2++;if(len<5)break;}in.close();}catch(Exceptione){}System.out.println("數(shù)字?jǐn)?shù)是"+c1+",字母數(shù)是"+c2);}{標(biāo)準(zhǔn)答案:trynewFileInputStream知識點(diǎn)解析:由于in是FileInputStream類的對象,所以此處需要將in通過構(gòu)造方法FileInputStream(Stringname)實(shí)例化。FileInputStream(Stringname)——通過打開一個(gè)到實(shí)際文件的連接來創(chuàng)建一個(gè)FileInputStream,該文件通過文件系統(tǒng)中的路徑名name指定。[程序解析]本程序利用FileInputStream類從文件中讀取一系列字符,然后判斷字母和數(shù)字個(gè)數(shù),將結(jié)果輸出。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、請完善程序(程序文件名:Java_3.java)并進(jìn)行調(diào)試。請?jiān)谙庐嬀€處填入正確內(nèi)容,然后刪除下畫線。請勿刪除注釋行和其他已有的語句內(nèi)容。題目要求:編寫程序完成類Java_3的完整功能,該類定義了幾何點(diǎn)對象的操作。該程序的運(yùn)行結(jié)果如下:x=5y=5Locationis(5,5)x=8y=9Locationis(8,9)源程序:publicclassJava_3{intx,y;//點(diǎn)的坐標(biāo)publicJava_3(){}publicJava_3(intx,inty){(1)}//構(gòu)造方法,對(x,y)進(jìn)行初始賦值publicJava_3(Java_3P){(2)}//構(gòu)造方法,將P的坐標(biāo)賦值給(x,y)//以對象的形式返回當(dāng)前點(diǎn)的位置publicJava_3getLocation(){Java_3p=(3);//實(shí)例化一個(gè)Java_3對象p,其坐標(biāo)是(x,y)(4);//返回對象p}publicintgetX(){returnx;}//返回點(diǎn)的橫坐標(biāo)publicintgetY(){returny;}//返回點(diǎn)的縱坐標(biāo)publicvoidmove(intx,inty){this.x=x;this.y=y;}//把當(dāng)前點(diǎn)移到新的位置(x,y)上publicStringtoString(){return"("+x+","+y+")";}//以(x,y)的格式返回點(diǎn)的位置publicvoidtranslate(intx,inty){this.x+=x;this.y+=y;}//在原有坐標(biāo)上分別增加x和ypublicstaticvoidmain(Stringargs[]){Java_3P=(5);//生成一個(gè)對象(5,5)System.out.println("x="+p.x+"y="+p.y);System.out.println("Locationis"+p.toString());//12(x,y)的方式打印坐標(biāo)的位置(6);//在原有位置上增加(3,4)System.out.println("x="+p.x+"y="+p.y);//打印橫坐標(biāo)和縱坐標(biāo)的值System.out.println("Locationis"+p.toString());//以(x,y)的方式打印坐標(biāo)的位置}}標(biāo)準(zhǔn)答案:(1)this.x=x;this.y=y;(2)this.x=p.x;this.y=p.y;(3)newJava_3(x,y);(4)returnp(5)newJava_3(5,5)(6)p.translate(3,4)知識點(diǎn)解析:定義構(gòu)造方法,由于給了兩個(gè)參數(shù),所以需要通過參數(shù)給類的變量賦值,因此通過this關(guān)鍵字表明是對當(dāng)前類的變量賦值。定義構(gòu)造方法,由于參數(shù)給了Java_3類的對象p,所以通過這個(gè)參數(shù)給變量賦值。注釋說明是通過坐標(biāo)(x,y)進(jìn)行實(shí)例化,所以構(gòu)造方法需要有兩個(gè)參數(shù)x和y。根據(jù)注釋以及程序中創(chuàng)建的對象p,需要將p返回,因此是return語句。注釋中給出了對象的坐標(biāo)(5,5)因此需要通過兩個(gè)參數(shù)x和y調(diào)用構(gòu)造方法Java_3(intx,inty)進(jìn)行實(shí)例化。注釋中說明在原有位置增加(3,4),因此需要對對象調(diào)用方法translate()。可以通過方法的定義看出是在原有位置增加一定值。[程序解析]本程序主要考查類的對象的創(chuàng)建、構(gòu)造方法的重載和類的方法使用。國家二級(JAVA)機(jī)試模擬試卷第5套一、基本操作題(本題共1題,每題1.0分,共1分。)1、下列程序中,要求計(jì)算1+2+3+…+100的值,并顯示計(jì)算結(jié)果。請將程序補(bǔ)充完整。程序運(yùn)行結(jié)果如下:5050源程序代碼文件清單如下:publicclassex20_1{publicstaticvoidmain(Stringargs[]){ex20_1obj20_1=newex20_1();obj20_1.method20_1();}publicvoidmethod20_1(){intsum;______;for(inti=1;i<=100;i++){______;}______;}}標(biāo)準(zhǔn)答案:sum=0sum+=i或者sum=sum+iSystem.out.println(sum)知識點(diǎn)解析:本題主要考查整型變量的初始化、累加和輸出操作,以及for循環(huán)語句的用法。解題關(guān)鍵是熟悉整型變量的基本操作,熟悉并能利用for循環(huán)語句解決一些簡單的數(shù)學(xué)問題。本題中,第1個(gè)空,需要對變量sum進(jìn)行初始化,否則以后進(jìn)行累加時(shí)會(huì)產(chǎn)生錯(cuò)誤;第2個(gè)空,填入累加的表達(dá)式;第3個(gè)空,調(diào)用基本I/O方法將運(yùn)算結(jié)果顯示出來。二、簡單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、請完成下列Java程序。程序的功能是顯示用戶在命令行方式下指定的任意驅(qū)動(dòng)器文件夾的內(nèi)容。提示:publicstring()list();//將文件夾中所有文件名保存在字符數(shù)組中返回。注意:請勿改動(dòng)main()主方法和其他已有的語句內(nèi)容,僅在下劃線處填入適當(dāng)?shù)恼Z句。源程序文件代碼清單如下:importjava.io.*;publicclassFindDirectories{publicstaticvoidmain(Stringargs[]){if(args.length==0)args=newString(){".."};try{______;String[]fileName=pathName.list();for(inti=0;i<fileName.length;i++){Filef=newFile(pathName.getPath(),fileName[i]);if(______){System.out.println(f.getCanonicalPath());main(newString[]{f.getPath()});}}}catch(IOExceptione){e.printStackTrace();}}}標(biāo)準(zhǔn)答案:FilepathName=newFile(args[0])f.isDirectory()知識點(diǎn)解析:本題主要考查文件操作的基本知識。解答本題的關(guān)鍵是熟練掌握對文件操作的基本知識。其中,F(xiàn)ilepathName=newFile(args[0])語句的功能是生成File類對象pathName;if(f.isDirectory())語句的功能是判斷生成的f對象是否為文件夾。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、下面是一個(gè)Applet程序,其功能是實(shí)現(xiàn)網(wǎng)頁上的電子時(shí)鐘,要求顯示的格式為hh:mm:ss如02:04:50。提示:通過獲取當(dāng)前系統(tǒng)時(shí)間來實(shí)現(xiàn)。請改正程序中的錯(cuò)誤(有下劃線的語句),使程序能輸出正確的結(jié)果。注意:不改動(dòng)程序的結(jié)構(gòu),不得增行或刪行。源程序文件清單如下:importjava.applet.*;importjava.awt.*;importjava.util.Date;publicclassex03_3extendsAppletimplementsRunnable{privateThreadthTimer=null;privateStringstrTime;privateinttHour,tMin,tSec;publicvoidinit(){setFont(newFont("TimesNewRoman",F(xiàn)ont.BOLD,20));}publicvoidpaint(GraphicsGraph){DatedNow=newDate();tHour=dNow.getHours();tMin=dNow.getMinutes();tSec=dNow.getSeconds();if(tHour<=9)strTime="0"+tHour+":";elsestrTime=tHour+":";if(tMin<=9)strTime="0"+strTime+tMin+":";elsestrTime=strTime+tMin+":";if(tSec<=9)strTime="0"+strTime+tSec;elsestrTime=StrTime+tSec;Graph.drawString(StrTime,80,80);}publicvoidStart{}{if(thTimer==null){thTimer=newThread();thTimer.start();}}publicvoidrun(){while(thTimer!=null){repaint();try{Thread.sleep(1000);}catch(InterruptedExceptionie)}}}ex03_3.html<HTML><HEAD><TITLE>ex03_3</TITLE></HEAD><BODY><appletcode="ex03_3.class"width=800height=400></applet></BODY></HTML>標(biāo)準(zhǔn)答案:strTime=strTime+"0"+tMin+":"strTime=strTime+"0"+tSecnewThread(this)知識點(diǎn)解析:本題主要考查Java多線程與Applet的圖形繪制相結(jié)合解決實(shí)際問題的綜合應(yīng)用。解題關(guān)鍵是熟悉Java多線程的程序設(shè)計(jì)思想,必須在程序中編寫線程類內(nèi)start()、stop()和run()方法的相關(guān)程序,利用線程類的sleep()方法,讓每次顯示的時(shí)間延遲1秒,使電子時(shí)鐘看起來像是每一秒跳動(dòng)一次的樣子,同時(shí)還要熟悉Date類的getHours()等方法獲得時(shí)間。本題中,包含兩個(gè)線程,一個(gè)是程序中Runnable得到的線程,另一個(gè)是程序本身。第1處和第2處錯(cuò)誤相似,一個(gè)是在不足10的小時(shí)數(shù)的前一位補(bǔ)上0,如tHotur=9,則顯示出來的應(yīng)該是09:第3處,用Thread類的構(gòu)造函數(shù)創(chuàng)建新的線程時(shí),需要把this作為參數(shù)傳遞給新的線程,否則程序不會(huì)動(dòng)態(tài)執(zhí)行。國家二級(JAVA)機(jī)試模擬試卷第6套一、基本操作題(本題共1題,每題1.0分,共1分。)1、下列程序中,實(shí)現(xiàn)將封裝數(shù)據(jù)類型Integer和基本數(shù)據(jù)類型int之間的轉(zhuǎn)換,以及Integer,int類型和String類型之間的轉(zhuǎn)換。請將程序補(bǔ)充完整。程序運(yùn)行結(jié)果如下:123456456publicclassex7_1{publicstaticvoidmain(String[]args){IntegerintObj;intn;Strings;intObj=newInteger(123);n=intObj.__________;System.out.printin(Integer.toString(n));s=newString("456");intObj=Integer._________;System.out.println(intObj.__________);n=Integer.parseInt(s);System.out.println(Integer.toString(n));}}標(biāo)準(zhǔn)答案:intValue()valueOf(s)toString()知識點(diǎn)解析:本題主要考查Java類庫中對簡單數(shù)據(jù)類型的封裝以及對封裝類型與基本類型之間的轉(zhuǎn)換。解題關(guān)鍵是熟悉基本數(shù)據(jù)類型的封裝,以及一些常用封裝類型的常用轉(zhuǎn)換方法,如Integer類的parseInt()方法等。本題中,第1個(gè)空,使用intValue()方法將封裝對象intObj轉(zhuǎn)換為基本的數(shù)據(jù)類型int;第2個(gè)空,使用valueOf()方法,將字符串轉(zhuǎn)換為封裝對象intObj;第3個(gè)空,使用toString()方法,將封裝對象intObj轉(zhuǎn)換為字符串打印出來,注意,這里不可以加參數(shù)。二、簡單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、請完成下列Java程序:用JFrame建立一個(gè)窗口,再用網(wǎng)格布局管理器,對窗口布局進(jìn)行控制,上面有2行2列4個(gè)按鈕,要求對按鈕的大小進(jìn)行設(shè)定,寬度為150,高度為80。注意:請勿改動(dòng)main()主方法和其他已有語句內(nèi)容,僅在下劃線處填入適當(dāng)?shù)恼Z句。程序運(yùn)行結(jié)果如下:importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassex9_2{publicstaticvoidmain(String[]args){JFramefrm:newJFrame();frm.setTitle("ex9_2");Containercont=frm.getContentPane();_____________;cont.add(newJButton("button1"));cont.add(newJButton("button2"));Dimensiondimen=____________;JButtonbtn1=newJButton("button3");btn1.setPreferredSize(dimen);cont.add(btn1);cont.add(newJButton("button4"));frm.addWindowListener(newWindowAdapter(){publicvoidwinowClosing(WindowEventwe){System.exit(0);}});frm.pack();frm.setVisible(true);}}標(biāo)準(zhǔn)答案:cont.setLayout(newGridLayout(2,2))newDimension(150,80)知識點(diǎn)解析:本題主要考查網(wǎng)格布局管理器(GridLayout)在使用swing制作圖形用戶界面時(shí)的一些簡單應(yīng)用。解題關(guān)鍵是熟悉GridLayout的使用方法,初始化的方法是通過容器Container的對象調(diào)用setLayout()方法實(shí)現(xiàn)的,而它的一些特點(diǎn),如并不會(huì)保持當(dāng)初組件所定義的大小等,也需要很熟悉。本題中,第1個(gè)空,采用初始化Dimension類的對象來給出Button組件的初始大?。簠?shù)分別是寬度和高度;第2個(gè)空,將容器通過網(wǎng)格布局管理器設(shè)置為2行2列。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、下面是一個(gè)Applet程序,其功能是將完整的圖像顯示于Applet的區(qū)塊中,然后可以通過拖動(dòng)鼠標(biāo)讓圖像隨著鼠標(biāo)拖動(dòng)的軌跡而移動(dòng)。請改正程序中的錯(cuò)誤(有下劃線的語句),使程序能輸出正確的結(jié)果。注意:不改動(dòng)程序的結(jié)構(gòu),不得增行或刪行。程序運(yùn)行結(jié)果如下:importjava.applet.*;importjava.awt.*;/*<appletcode="ex8_3.class"width=800height=400></applet>*/publicclassex8_3extendsApplet{
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 4706.124-2024家用和類似用途電器的安全第124部分:商用真空包裝器具的特殊要求
- GB/T 44783-2024大口徑空間天文望遠(yuǎn)鏡光學(xué)成像質(zhì)量地面評價(jià)方法
- 圖案形態(tài)課件教學(xué)課件
- 第二章 相互作用-力的合成與分解 2025年高考物理基礎(chǔ)專項(xiàng)復(fù)習(xí)
- 5.2 課時(shí)2 共價(jià)鍵 分子間作用力 課件 高一上學(xué)期化學(xué)蘇教版(2019)必修第一冊
- 3.3鹽類的水解 第一課時(shí) 課件高二上學(xué)期化學(xué)人教版(2019)選擇性必修1
- 糖尿病與感染綜合管理
- 糖尿病足換藥技術(shù)
- 醫(yī)藥總監(jiān)年度規(guī)劃
- 白血病病人的護(hù)理講課
- 個(gè)人晉升述職報(bào)告PPT課件(帶內(nèi)容)
- 教學(xué)法研究報(bào)告:《任務(wù)驅(qū)動(dòng)法》探索與實(shí)踐
- 產(chǎn)品造型設(shè)計(jì)基礎(chǔ)--形態(tài)構(gòu)成要素、形體的構(gòu)成ppt課件
- 商業(yè)發(fā)票模板(INVOICE)
- 醫(yī)院績效考核分配方案及實(shí)施細(xì)則
- 水工環(huán)地質(zhì)調(diào)查技術(shù)標(biāo)準(zhǔn)手冊
- 血液科常用化療方案(1)
- 7上unit2reading
- 王維的生平經(jīng)歷
- 拉刀基本知識(完整版)
- 次氯酸鈉溶液 MSDS
評論
0/150
提交評論