版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
國家二級(JAVA)機(jī)試模擬試卷2(共9套)(共66題)國家二級(JAVA)機(jī)試模擬試卷第1套一、基本操作題(本題共1題,每題1.0分,共1分。)1、下列程序中,定義了3個變量1,s,b,類型分別為long,short,byte并賦了初始值,分別為-1,1,-1,要求對1做按位左移運算,對s做按位右移運算,對b做無符號按位右移運算,移動的位數(shù)均為10位。請將程序補(bǔ)充完整。程序運行結(jié)果如下:-10240-1publicclassex8_1{publicstaticvoidmain(String[]args){long1:-1;___________;System.out.println(1);shorts=1;___________;System.out.println(s);byteb=-1;__________;System.out.println(b);}}標(biāo)準(zhǔn)答案:1<<=10S>>=10b>>>=10知識點解析:本題主要考查位運算符。解題要點是熟悉左移,右移和無符號右移運算的表達(dá)式。本題中,3個空分別對應(yīng)填上題目要求的運算表達(dá)式即可,注意無符號右移運算適合對負(fù)數(shù)進(jìn)行右移運算。二、簡單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、請完成下列Java程序:輸出某年的某月有多少天數(shù),要求生成2個輸入對話框,一個輸入年份,一個輸入月份,并且能檢查輸入的數(shù)字是否符合要求,如果符合要求,則根據(jù)輸入的年份和月份計算出這一年的這一月有多少天。提示:閏年為年數(shù)能被4整除但是不能被100整除。注意:請勿改動main()主方法和其他已有語句內(nèi)容,僅在下劃線處填入適當(dāng)?shù)恼Z句。程序運行結(jié)果如下:importjavax.swing.JOptionPane;publicclassex10_2{publicstaticvoidmain(String[]args)(StringstrIn;intnYear,nMonth,nNumOfDays=0;strIn=JOptionPane.showInputDialog(,,year.);nYear=Integer.parseInt(strIn);if(nYear<0){System.out.println("Invalidatenumberofyear!")return;}strIn=JOptionPane.showInputDialog("month.);nMonth=Integer.parseInt(strIn);if(_____________){System.out.println("Invalidatenumberofmonth!"return;}switch(nMonth){case1:case3:case5:case7:case8:case10:case12:nNumOfDays=31;break;case4:case6:case9:case11:nNumOfDays=30;break;case2:if(________________)nNumOfDays=29;elsenNumOfDays=28;break;}System.out.println("Numberofdays:"+nNumOfDays);}}標(biāo)準(zhǔn)答案:nMonth<0||nMonth>12((nYear%4==0)&&!(nYear%100==0))||(nYear%400==0)知識點解析:本題主要考查swing圖形用戶界面設(shè)計和case語句的簡單應(yīng)用。解題關(guān)鍵是會用swing的容器面板構(gòu)造對話框,熟悉判斷閏年的條件語句的設(shè)計,判斷輸入是否符合程序要求的條件語句設(shè)計,case語句的設(shè)計。本題中,第1個空,判斷輸入的月份值應(yīng)該在1到12月之間,否則給出提示信息并退出;第2個空,閏年的判斷,將題干中的提示用代碼實現(xiàn)。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、下面是一個Applet程序,其功能是實現(xiàn)網(wǎng)頁上的電子時鐘,要求顯示的格式為hh:mm:ss如02:04:50。提示:通過獲取當(dāng)前系統(tǒng)時間來實現(xiàn)。請改正程序中的錯誤(有下劃線的語句),使程序能輸出正確的結(jié)果。注意:不改動程序的結(jié)構(gòu),不得增行或刪行。程序運行結(jié)果如下:importjava.applet.*;importjava.awt.*;importjava.util.Date;/*<appletcode=”ex9_3.Class”,width;800height=400></applet>*/publicclassex9_3extendsAppletimplementsRunnable{privateThreadthTimer:null;privateStringstrTime;privateinttHour,tMin,tSec;publicvoidinit(){setFont(newFont("TimesNewRoman",Font.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){}}}publicvoidstop(){thTimer=null;}}ex9_3.html<HTML><HEAD><TITLE>ex9_3</TITLE></HEAD><BODY><appletcode="ex9_3.class"width=800height=400></applet></BODY></HTML>標(biāo)準(zhǔn)答案:StrTime=strTime+"0"+tMin+":"strTime=StrTime+"0"+tSecnewThread(this)知識點解析:本題主要考查Java多線程與Applet的圖形繪制相結(jié)合解決實際問題的綜合應(yīng)用。解題關(guān)鍵是熟悉Java多線程的程序設(shè)計思想,必須在程序中編寫線程類內(nèi)start(),stop()和run()方法的相關(guān)程序,利用線程類的sleep()方法,讓每次顯示的時間延遲1秒,使電子時鐘看起來像是每一秒跳動一次的樣子,同時還要熟悉Data類的getHours()等方法獲得時間。本題中,包含2個線程,一個是程序中Runnable得到的線程,另一個是程序本身。第1處和第2處錯誤相似,一個是在不足10的小時數(shù)的前一位補(bǔ)上“0”,如tHour=9,則顯示出來的應(yīng)該是“09”;第三處,用Thread類的構(gòu)造方法創(chuàng)建新的線程時,需要把this作為參數(shù)傳遞給新的線程,否則程序不會動態(tài)執(zhí)行。國家二級(JAVA)機(jī)試模擬試卷第2套一、選擇題(本題共40題,每題1.0分,共40分。)1、下列代表十六進(jìn)制整數(shù)的是()。A、0123B、1900C、fa00D、0xa2標(biāo)準(zhǔn)答案:D知識點解析:本題考查Java語言中的整型常量。整型常量有三種書寫格式:十進(jìn)制整數(shù),如123,-30,365;八進(jìn)制整數(shù),以0開頭,如011表示十進(jìn)制的9;十六進(jìn)制整數(shù):以0x或0X開頭,如0X123表示十進(jìn)制數(shù)291。由此可見,選項D表示的是十六進(jìn)制整數(shù),選項C不是整數(shù)形式,選項B是十進(jìn)制整數(shù),選項A是八進(jìn)制整數(shù),只有選項D為本題正確選項。2、自定義的異常類可從()類繼承。A、ErrorB、AWTErrorC、VirtualMachineErrorD、Exception及其子集標(biāo)準(zhǔn)答案:D知識點解析:Java語言中Throwable類分為Error和Exception兩個子類。自定義的異常類是從Exception及其子集類繼承的。3、結(jié)構(gòu)化分析方法是面向()的自頂向下逐步求精進(jìn)行需求分析的方法。A、對象B、數(shù)據(jù)結(jié)構(gòu)C、數(shù)據(jù)流D、目標(biāo)標(biāo)準(zhǔn)答案:C知識點解析:結(jié)構(gòu)化分析方法是面向數(shù)據(jù)流進(jìn)行需求分析的方法,采用自頂向下、逐層分解、建立系統(tǒng)的處理流程。4、已知一個有序線性表為(13,18,24,35,47,50,62,83,90,115,134),當(dāng)用二分法查找值為90的元素時,查找成功的比較次數(shù)為()。A、1B、2C、3D、9標(biāo)準(zhǔn)答案:B知識點解析:根據(jù)二分法查找需要兩次:首先將90與表中間的元素50進(jìn)行比較,由于90大于50,所以在線性表的后半部分查找;第二次比較的元素是后半部分的中間元素,即90,這時兩者相等,即查找成功。5、有下列二叉樹,對此二叉樹進(jìn)行后序遍歷的結(jié)果為()。A、ACBEDGFHB、GDBHEFCAC、HGFEDCBAD、ABCDEFGH標(biāo)準(zhǔn)答案:B知識點解析:對二叉樹的后序遍歷是指:先訪問左子樹,然后訪問右子樹,最后訪問根結(jié)點,并且在訪問其左、右子樹時先訪問其左、右子樹,最后訪問根結(jié)點。6、下列關(guān)于項目中“移出”文件的說法,正確的是()。A、被移出的文件將直接從磁盤中刪除B、被移出的文件將不能被任何項目添加C、被移出的文件只是將文件移出項目,但文件保留在磁盤中D、被移出的文件,以后不能再次添加到原項目中,但可以添加到其他項目中標(biāo)準(zhǔn)答案:C知識點解析:在數(shù)據(jù)庫中移除不代表刪除,從項目中移除是指文件只是從項目中移除,但文件還保存在磁盤中,如果需要仍然可再次添加到此項目中。當(dāng)在項目中刪除文件后,文件才能被添加到其他的項目中。所以答案選擇C。7、需求分析階段的任務(wù)是()。A、軟件開發(fā)方法B、軟件開發(fā)工具C、軟件開發(fā)費用D、軟件系統(tǒng)功能標(biāo)準(zhǔn)答案:D知識點解析:需求分析是軟件定義時期的最后一個階段,它的基本任務(wù)就是詳細(xì)調(diào)查現(xiàn)實世界要處理的對象,充分了解原系統(tǒng)的工作概況,明確用戶的各種需求,然后在這些基礎(chǔ)上確定新系統(tǒng)的功能。8、設(shè)R是一個2元關(guān)系,S是一個3元關(guān)系,則下列運算中正確的是()。A、R-SB、R×SC、R∩SD、R∪S標(biāo)準(zhǔn)答案:B知識點解析:關(guān)系的交(∩)、并(∪)和差(-)運算要求兩個關(guān)系是同元的,顯然作為二元的R和三元S只能做笛卡兒積運算。9、數(shù)據(jù)流圖用于抽象描述一個軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名標(biāo)識的圖符不屬于數(shù)據(jù)流圖合法圖符的是()。A、控制流B、加工C、數(shù)據(jù)存儲D、源和終標(biāo)準(zhǔn)答案:A知識點解析:數(shù)據(jù)流圖簡稱DFD,它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動和處理的過程,由于它只反映系統(tǒng)必須完成的邏輯功能,所以它是一種功能模型。數(shù)據(jù)流圖有4種基本圖形符號:箭頭表示數(shù)據(jù)流;橢圓表示加工;雙杠表示存儲文件(數(shù)據(jù)源);方框表示數(shù)據(jù)的源點或終點。10、在Java中,線程是()。A、分時的B、搶占式的C、非搶占式的D、非分時的標(biāo)準(zhǔn)答案:B知識點解析:本題考查線程的調(diào)度。Java的線程調(diào)度策略是一種基于優(yōu)先級的搶占式調(diào)度,選項B正確。Java這種搶占式調(diào)度可能是分時的,即每個等待池中的線程輪流執(zhí)行,也可以不是,即線程逐個運行,具體采用哪種方式,由具體JVM而定。線程一般通過使用sleep()等方法保證給其他線程運行時間。11、用來導(dǎo)入已定義好的類或包的語句是()。A、mainB、importC、publicclassD、class標(biāo)準(zhǔn)答案:B知識點解析:本題考查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中唯一的注釋方式是“//”D、源文件中public類可以有0個或多個標(biāo)準(zhǔn)答案:A知識點解析:本題考查Java的基本概念。Java的基本概念是考試重點,應(yīng)該重視。在Java中,聲明變量時,必須指定類型,否則將會出錯,所以選項A說法正確。Java標(biāo)識符是區(qū)分大小寫的,變量number和Number對Java來說是不同的,選項B說法錯誤。Java中有三種注釋方式:文檔注釋/**…*/,被javadoc處理,可以建立類的一個外部說明性文件;C語言注釋風(fēng)格/*…*/,用于去掉當(dāng)前不再使用但仍想保留的代碼等;單行注釋//,格式上要求注釋符//后必須緊跟一個空格,然后才是注釋信息,選項C說法錯誤。源文件中public類可以有0個或1個,不能多于1個,選項D說法錯誤。13、下列屬于合法的Java標(biāo)識符是()。A、"ABC"B、&5678C、+rriwoD、saler標(biāo)準(zhǔn)答案:D知識點解析:Java中標(biāo)識符的命名規(guī)則是:標(biāo)識符以字母、下畫線、美元符作為首字符的字符串序列;標(biāo)識符是區(qū)分大小寫的;標(biāo)識符的字符數(shù)沒有限制。由此可見,Java中標(biāo)識符不能以“"”開頭,所以選項A錯誤,不能以“&”開頭,選項B錯誤,不能以“+”開頭,選項C錯誤,只有選項D是正確答案。14、如果進(jìn)棧序列為e1、e2、e3、e4、e5,則可能的出棧序列是()。A、e3、e1、e4、e2、e5B、e5、e2、e4、e3、e1C、e3、e4、e1、e2、e5D、任意順序標(biāo)準(zhǔn)答案:B知識點解析:根據(jù)棧先進(jìn)后出的特點可知e1肯定是最后出棧的,因此正確答案為選項B。15、在Java中,實現(xiàn)用戶界面功能的包是()。A、java.a(chǎn)ppletB、javax.transactionC、java.utilD、java.a(chǎn)wt標(biāo)準(zhǔn)答案:D知識點解析:本題考查考生對Java包功能的理解。選項A中java.a(chǎn)pplet包是為Applet提供執(zhí)行需要的所有類,主要訪問Applet內(nèi)容的通信類;選項B中transaction包是屬于javax而不是java,javax.transaction包是提供事務(wù)處理所需要的包;選項C中java.util包提供使用程序類和集合類,如系統(tǒng)特性定義和使用、日期函數(shù)類、集合Collection、Map、List、Array等常用工具類;java.a(chǎn)wt包是封裝抽象窗口工具包,提供構(gòu)建和管理用戶圖形界面功能,為本題正確答案。16、下面()正確表示了int類型的聚會范圍。A、-216~216-1B、-231~231-1C、-232~232-1D、-264~264-1標(biāo)準(zhǔn)答案:B知識點解析:該題考查對基本數(shù)據(jù)類型的長度范圍的掌握。在Java語言中,每一種基本類型的長度范圍是固定的,它不隨著機(jī)器字長的改變而改變。對于整型(int),它的長度是4字節(jié),而且它可正可負(fù),所以其取值范圍應(yīng)該是-231~231-1。17、在編寫Java程序的時候,如果不為類的成員變量定義初始值,Java會給它們設(shè)置默認(rèn)值,下列說法中不正確的是()。A、Byte的默認(rèn)值是0B、int的默認(rèn)值是0C、long的默認(rèn)值是0.0LD、float的默認(rèn)值是0.0f標(biāo)準(zhǔn)答案:C知識點解析:Long類型的默認(rèn)值為0L,而不是0.0L。18、Java語言中所有的簡單數(shù)據(jù)類型都被包含在()中。A、java.sqlB、java.a(chǎn)wtC、java.langD、java.math標(biāo)準(zhǔn)答案:C知識點解析:Java語言中,所有的簡單數(shù)據(jù)類型都被包含在包java.1ang中。19、設(shè)a=8,則表達(dá)式a>>>2的值是()。A、1B、2C、3D、4標(biāo)準(zhǔn)答案:B知識點解析:本題具體考查對位運算符中無符號右移運算符的掌握。無符號右移運算符">>>"用于將一個數(shù)的各二進(jìn)制位全部無符號右移若干位,與運算符">>"不同的是左補(bǔ)0。在本題中,8的二進(jìn)制表示1000,右移兩位后變成了0010,對應(yīng)的十進(jìn)制數(shù)是2。20、以下各選項中能正確聲明一個表示50個值為null的字符串?dāng)?shù)組的是()。A、string[]a;B、stringa[];C、chara[50][];D、stringa[]=newString[50]標(biāo)準(zhǔn)答案:D知識點解析:本題考查對字符串?dāng)?shù)組變量聲明的掌握。在Java語言中,typearrayName[]和type[]arrayName的效果一樣,都表示聲明一個數(shù)組。所以選項A和選項B的效果是一樣的,對于本題來說都是不正確的,因為它們沒有指明數(shù)組所包含的元素的個數(shù);選項C是一個二維的字符數(shù)組,Java語言跟C語言不一樣,在C語言中,一個二維的字符數(shù)組就可以表示一個一維的字符串?dāng)?shù)組。而在Java中,字符char是基本數(shù)據(jù)類型,字符串string則是以對象的形式來表示的。所以,chara[][]并不等價于stringa[]。而且,C選項并沒有指明數(shù)組的長度;選項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("IntArray["+i+"]"=intArray[i]);}System.out.println("----------");intarrLen=4;IntArray=newint[arrLen];For(intj=intArray.length;j>=0;j--){intArray[j]=j(luò)*3;system.out.println("hello"+intArray[j]);}}}A、編譯未通過B、編譯通過,但運行錯誤C、可以運行,但有錯誤D、以上都不對標(biāo)準(zhǔn)答案:B知識點解析:這是一道考查數(shù)組引用的題,目的是考查如何在程序中引用初始化后的數(shù)組。引用的方式為arrayName[index],其中index為數(shù)組的下標(biāo),可以為整數(shù)、變量和表達(dá)式,范圍從0開始,一直到數(shù)組的長度減1。在Java語言中,是要對數(shù)組下標(biāo)進(jìn)行檢查的。因此,當(dāng)程序運行到數(shù)組的長度值時,就發(fā)生了越界現(xiàn)象。22、下列程序的運行結(jié)果是()。Publicclasssun{Publicstaticvoidmain(Stringargs[]){intx=4,y=0;if(Math.pow(x,2)==16)y=x;if(Math.pow(x,2)<15)y=1/x;if(Math.pow(x,2)>15)y=(int)Math.pow(x,2)+1;system.out.println(y);}}A、4B、17C、18D、0.25標(biāo)準(zhǔn)答案:B知識點解析:本題是考查對if-else分支結(jié)構(gòu)和幾個標(biāo)準(zhǔn)函數(shù)的理解。pow(x,y)方法是x的y次冪,程序中pow(x,2)滿足第1個if語句和第3個if語句,條件變量y將被賦值兩次,但對于同一個變量來說,只能存儲最后一個所賦的值。23、下述關(guān)于數(shù)據(jù)庫系統(tǒng)的敘述中,正確的是()。A、數(shù)據(jù)庫系統(tǒng)減少了數(shù)據(jù)冗余B、數(shù)據(jù)庫系統(tǒng)避免了一切冗余C、數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)的一致性是指數(shù)據(jù)類型一致D、數(shù)據(jù)庫系統(tǒng)比文件系統(tǒng)能管理更多的數(shù)據(jù)標(biāo)準(zhǔn)答案:A知識點解析:數(shù)據(jù)庫系統(tǒng)會減少數(shù)據(jù)冗余,但不可能避免所有冗余。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知識點解析:本題考查對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?。?)j--;--j;--j;System.out.println(j);}A、63B、74C、62D、73標(biāo)準(zhǔn)答案:B知識點解析:該題考查對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次,j的值為6,執(zhí)行if語句,i%3=0不滿足條件,繼續(xù)向下執(zhí)行2次--j,j的值為4。26、關(guān)于Applet執(zhí)行的操作,下面說法正確的是()。A、在運行時調(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知識點解析:本題考查Applet的概念。Java虛擬機(jī)為Applet提供能夠良好運行的沙箱,一旦它們試圖離開沙箱則會被禁止。由于Applet是通過網(wǎng)絡(luò)傳遞的,這就不可避免地使人想到會發(fā)生安全問題。例如,有人編寫惡意程序通過小應(yīng)用程序讀取用戶密碼并散播到網(wǎng)絡(luò)上,這將會是一件非??膳碌氖虑?。所以,必須對小應(yīng)用程序進(jìn)行限制。瀏覽器禁止Applet運行任何本地可運行程序,選項A錯誤。禁止加載本地庫或方法,Applet只能使用自身的代碼或Applet瀏覽器提供的JavaAPI,不允許裝載動態(tài)連接庫和調(diào)用任何本地方法,選項C正確。禁止讀/寫本地計算機(jī)的文件系統(tǒng),選項B錯誤。禁止與沒有提供Applet的任何主機(jī)建立網(wǎng)絡(luò)連接,如果Applet試圖打開一個socket進(jìn)行網(wǎng)絡(luò)通信,所連接的主機(jī)必須是提供Applet的主機(jī),選項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知識點解析:本題考查Applet生命周期的概念。Applet生命周期是考試重點考查內(nèi)容,應(yīng)該加以重視。init()在Applet下載時調(diào)用,而不是下載前調(diào)用,選項A錯誤。start()在初始化之后以及在Applet被重新訪問時調(diào)用,不僅僅只是在初始化之后調(diào)用,選項B錯誤。stop()在停止執(zhí)行時調(diào)用,關(guān)閉瀏覽器時調(diào)用的是destroy(),選項C錯誤。destroy()在關(guān)閉加載Applet的瀏覽器從系統(tǒng)中撤出時調(diào)用,此時Applet必然調(diào)用stop()方法停止其運行,然后才能調(diào)用destroy()方法從內(nèi)存卸載并釋放該Applet的所有資源。注意理解Applet的執(zhí)行過程。28、對于下面語句的說法,不正確的是()。ThreadthrObj=newThread();A、系統(tǒng)沒有為該線程對象分配資源B、只能啟動或者終止C、創(chuàng)建了一個空的線程對象D、可以調(diào)用其他方法標(biāo)準(zhǔn)答案:D知識點解析:本題考查線程的創(chuàng)建。通過new命令創(chuàng)建一個線程對象后,該線程對象就處于創(chuàng)建狀態(tài),上面的語句只是創(chuàng)建了一個空的線程對象,選項C說法正確。此時,系統(tǒng)并沒有為該線程對象分配資源,選項A說法正確。處于這種狀態(tài)的線程,只能啟動或者終止,選項B說法正確。該線程此時并不能調(diào)用其他方法,如果調(diào)用其他方法就會失敗并引起非法狀態(tài)處理,選項D說法錯誤。29、數(shù)據(jù)庫設(shè)計包括兩個方面的設(shè)計內(nèi)容,它們是()。A、概念設(shè)計和邏輯設(shè)計B、模式設(shè)計和內(nèi)模式設(shè)計C、內(nèi)模式設(shè)計和物理設(shè)計D、結(jié)構(gòu)特性設(shè)計和行為特性設(shè)計標(biāo)準(zhǔn)答案:A知識點解析:數(shù)據(jù)庫設(shè)計包括概念設(shè)計和邏輯設(shè)計兩個方面的內(nèi)容。30、下列關(guān)于線程和進(jìn)程的說法正確的是()。A、進(jìn)程結(jié)構(gòu)的所有成分都在用戶空間內(nèi)B、用戶程序能夠直接訪問進(jìn)程涉及的數(shù)據(jù)C、線程是內(nèi)核級的實體D、線程結(jié)構(gòu)駐留在用戶空間中標(biāo)準(zhǔn)答案:D知識點解析:本題考查線程和進(jìn)程的概念。線程與進(jìn)程在概念上是相關(guān)的,進(jìn)程由代碼、數(shù)據(jù)、內(nèi)核狀態(tài)和一組寄存器組成,而線程是由表示程序運行狀態(tài)的寄存器,如程序計數(shù)器、棧指針以及堆棧組成,線程不包括進(jìn)程地址空間中的代碼和數(shù)據(jù),線程是計算過程在某一時刻的狀態(tài)。進(jìn)程是一個內(nèi)核級的實體,進(jìn)程結(jié)構(gòu)的所有成分都在內(nèi)核空間中,一個用戶程序不能直接訪問這些數(shù)據(jù)。線程是一個用戶級的實體,線程結(jié)構(gòu)駐留在用戶空間中,能夠被普通的用戶級方法直接訪問。31、下列選項成員變量聲明正確的是()。A、publicprotectedfinalinti;B、abstractclassF1{...}C、privatedoubleheight;D、doubleweight{}標(biāo)準(zhǔn)答案:C知識點解析:本題考查對成員變量的聲明。成員變量的聲明格式為:修飾符type變量名;其中type可以是java語言中的任意數(shù)據(jù)類型,而修飾符可以是public、protected,private,static,final,transient,volatile等。選項A錯誤,成員變量不能同時聲明成public和protected。選項B是類的聲明格式,并不是成員變量的聲明。成員變量聲明應(yīng)以";"結(jié)尾,選項D錯誤。選項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)答案:B知識點解析:start()方法就可以啟動該線程,線程也就處于可運行狀態(tài)Runnable。Start()方法產(chǎn)生了線程運行需要的系統(tǒng)資源,并調(diào)用線程體,也就是run()方法,使得線程可以進(jìn)入運行狀態(tài)。程序運行時首先創(chuàng)建一個新的線程對象t,并調(diào)用displayOutput(Strings)方法輸出thasbeencreated。t.start()方法調(diào)用run()方法,輸出tisrunning,所以正確答案為選項B。33、執(zhí)行下列程序時,會產(chǎn)生什么異常()。publicclassTest{publicstaticvoidmain(Stringargs[]){intd=101;intb=220;longa=321;System.out.println((a-b)/(a-b-d));}}A、ArrayIndexOutOfBoundsExceptionB、NumberFormatExceptionC、ArithmeticExceptionD、EOFException標(biāo)準(zhǔn)答案:C知識點解析:本題考查異常的概念。首先應(yīng)該掌握題目選項中給出的都是什么類型的異常。選項A是當(dāng)訪問數(shù)組中非法元素時引發(fā),出現(xiàn)數(shù)組負(fù)下標(biāo)異常。選項B是格式化數(shù)字異常。選項C是算術(shù)異常,如程序觸發(fā)分母為0,或用0取模時出現(xiàn)。選項D是文件已結(jié)束異常。當(dāng)Java執(zhí)行這個算術(shù)表達(dá)式的時候,由于求模運算的分母是a-b-d=0,就會構(gòu)造一個ArithmeticException的異常對象來使程序停下來并處理這個錯誤的情況,在運行時拋出這個異常。默認(rèn)的處理器打印出Exception的相關(guān)信息和發(fā)生異常的地點34、下面程序段的輸出結(jié)果為()。publicclassTest{publicstaticvoidmain(Stringargs[]){booleana,b,c;a=(3<5);b=(a==true);System.out.println("a="+a+"b="+b);c=(b==false);System.out.println("b="+b+"c="+c);}}A、a=trueb=falseb=truec=trueB、a=trueb=falseb=truec=falseC、a=trueb=trueb=truec=falseD、a=falseb=falseb=truec=false標(biāo)準(zhǔn)答案:C知識點解析:本題考查關(guān)系運算符<和==。題目中a=(3<5);比較3和5的大小,因為3<5,返回true給a;b=(a==true);判斷a是否為真,因為a確實為真,返回true給b;c=(b==false);判斷b是否為假,因為b不為假,返回false給c。最后結(jié)果a=true,b=true,b=true,c=false,選項C正確。35、下面程序段的輸出結(jié)果是()。publicclassTest{publicstaticvoidmain(Stringargs[]){inta,b;for(a=1,b=1;a<=100;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知識點解析:本題考查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é)束。36、棧中允許進(jìn)行插入和刪除的一端稱為()。A、棧頂B、棧底C、棧端D、棧尾標(biāo)準(zhǔn)答案:A知識點解析:棧是限定在表的一端進(jìn)行插入和刪除操作的線性表。在表中,允許插入和刪除的一端叫做“棧頂”,不允許插入和刪除的一端叫做“棧底”。37、下面程序段的輸出結(jié)果是()。publicclassTest{publicstaticvoidmain(Stringargs[]){inti=1;switch(i){case0:System.out.println("0");break;case1:System.out.println("1");case2:System.out.println("2");break;default:System.out.println("default");}}}A、01B、12C、10D、21標(biāo)準(zhǔn)答案:B知識點解析:本題考查switch-case-break的用法。每個分支語句后面必須有break語句,否則程序向下執(zhí)行,直到遇到break語句或程序結(jié)束。所以該題i=1時執(zhí)行case1分支語句,而case1分支語句后沒有break語句,程序繼續(xù)向下執(zhí)行case2分支語句,case2語句后有break語句,故程序不執(zhí)行default分支語句。38、Frame默認(rèn)的布局管理器是()。A、FlowLayoutB、BorderLayoutC、GridLayoutD、UpLayout標(biāo)準(zhǔn)答案:B知識點解析:本題考查Java中的布局管理器。FlowLayout是Pane和Applet默認(rèn)的布局管理器,構(gòu)件在容器中從上到下、從左到右進(jìn)行放置;BorderLayout是Window、Frame和Dialog的默認(rèn)布局管理器,在BorderLayout布局管理器中構(gòu)件分成5個區(qū)域,每個區(qū)域只能放置一個構(gòu)件;GridLayout使容器中各個構(gòu)件呈網(wǎng)狀布局,平均占據(jù)容器的空間;GardLayout把容器分成許多層,每層只能放置一個構(gòu)件。39、在Java語言中,ObjectOutputStream是指()。A、字節(jié)流B、字符流C、對象輸出流D、數(shù)據(jù)流標(biāo)準(zhǔn)答案:C知識點解析:本題考查Java輸入\輸出流的概念。FileInputStream是字節(jié)流,BufferedWriter是字符流,ObjectOutputStream是對象輸出流,既繼承了OutputStream抽象類,又實現(xiàn)了ObjectOutput接口,這是Java用接口技術(shù)代替雙重繼承的例子,其構(gòu)造方法參數(shù)是串行化的對象。40、請閱讀下列程序代碼,然后將程序的執(zhí)行結(jié)果補(bǔ)充完整。橫線處應(yīng)填寫的內(nèi)容是()。程序代碼: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é)果:InSituation0noExceptioncaughtinProcfinallyA、InSituation1B、InSituationC、withCatchD、intiArray1標(biāo)準(zhǔn)答案:A知識點解析:本題考查考生閱讀Java程序的能力。題目程序看似復(fù)雜,但流程非常簡單。程序的public類是throwsException,類中定義了Proc(intsel)方法。程序入口是main()方法,使用try-catch-finally來捕獲ArithmeticException和ArrayIndexOutOfBoundsException異常,這兩個異常是關(guān)于算術(shù)異?;驍?shù)組索引越界的異常。執(zhí)行Proc(0)時,輸出InSituation0和noExceptioncaught兩條信息;執(zhí)行Proc(1)時,輸出InSituation1和inProcfinally兩條信息。整個程序并未發(fā)生異常。二、基本操作題(本題共1題,每題1.0分,共1分。)41、本題將數(shù)組中arr[]={5,6,3,7,9,1}的各個元素按下標(biāo)的逆序輸出。publicclassjava1{publicstaticvoidmain(String[]args){intarr[]={5,6,3,7,9,1};;n=;while(n>=0){System.out.print(arr[n]+"");;}}}標(biāo)準(zhǔn)答案:第1處:intn第2處:arr.length-1第3處:n--或n=n-1或n-=1知識點解析:第1處使用前定義變量n;第2處和第3處遍歷數(shù)組各元素。三、簡單應(yīng)用題(本題共1題,每題1.0分,共1分。)42、本題中,窗口的背景色為系統(tǒng)桌面的顏色,在窗口中分別畫了空心和實心的黑色矩形、深灰色圓角矩形和淺灰色橢圓形,并且畫了白色粗體的“歡迎學(xué)習(xí)Java!”字符串。importjava.awt.*;importjavax.swing.*;publicclassjava2{publicstaticvoidmain(String[]args){FillFrameframe=newFillFrame();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.show();}}classFillFrameextendsJFrame{publicFillFrame(){setTitle("java2");setSize(WIDTH,HEIGHT);FillPanelpanel=newFillPanel();panel.setBackground(SystemColor.desktop);ContainercontentPane=getContentPane();contentPane.add(panel);}publicstaticfinalintWIDTH=400;publicstaticfinalintHEIGHT=250;}classFillPanelextendsJPanel{publicvoidpaintComponent(Graphicsg){;g.setColor(newColor(10,10,10));g.drawRect(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.fillRect(10,110,100,30);g.setColor(newColor(100,100,100));g.fillRoundRect(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("歡迎學(xué)習(xí)Java!",150,200);}}標(biāo)準(zhǔn)答案:第1處:super.paintComponent(g)第2處:Font.Bold知識點解析:第1處使用父類方法應(yīng)使用super來引用;第2處為設(shè)置粗體。四、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)43、下面程序中,在主窗口單擊鼠標(biāo)后,就在點擊后生成一個新窗口。importjava.awt.*;importjava.awt.event.*;publicclassjava3extendsFrame{java3(){super("java3");addNotify();addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvente){System.exit(0);}});Insetsinsets=getInsets();setSize(insets.left+insets.right+150,insets.top+insets.bottom+150);______;}______{______{Rectanglebounds=getBounds();intx=evt.getX()+bounds.x;inty=evt.getY()+bounds.y;java3m=newjava3();m.setLocation(x,y);m.show();}}staticpublicvoidmain(String[]args){(newjava3()).show();}}標(biāo)準(zhǔn)答案:第1處:this.addMouseListener(newMouseEventHandler())第2處:classMouseEventHandlerextendsMouseAdapter第3處:publicvoidmousePressed(MouseEventevt)知識點解析:第1處參數(shù)應(yīng)為實例化對象;第2處繼承父類應(yīng)使用extends,implements實現(xiàn)的是接口;第3處單擊鼠標(biāo)后事件應(yīng)為mousePressed。國家二級(JAVA)機(jī)試模擬試卷第3套一、基本操作題(本題共1題,每題1.0分,共1分。)1、下面的程序是求菲波那契(Fibonacci)數(shù)列的前10項。已知該數(shù)列的前兩項都為1,即F(1)=1,F(xiàn)(2)=1;而后面各項滿足:F(n)=F(n-1)+F(n-2)。請在程序的每條橫線處填寫一條語句,使程序的功能完整。注意:請勿改動main()主方法和其他已有的語句內(nèi)容,僅在橫線處填入適當(dāng)?shù)恼Z句。publicclassFibonacci{publicstaticvoidmain(Stringargs[]){System.out.printtn("Fibonacciis"+""+"_______________________);}staticlongfib(intn){if(______________)return1;elsereturn_________________}}標(biāo)準(zhǔn)答案:fib(10)n==0||n==1fib(n-1)+fib(n-2);知識點解析:本題主要考查遞歸算法。解答本題的關(guān)鍵是理解遞歸算法的思想。在本題中,fib(10)方法是計算含由10項的菲波那契(Fibonacci)數(shù)列,而fib(n-1)+fib(n-2);是用來計算第0項和第1項以外的菲波那契(Fibonacci)數(shù)列。二、簡單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、請完成下列Java程序:假設(shè)某家銀行,它可接受顧客的匯款,每做一次匯款,便可計算出匯款的總額?,F(xiàn)有兩個顧客,每人都分3次,每次50元將錢匯入。編寫一個程序,模擬實際作業(yè)。要求實現(xiàn)2個類,一個是銀行類,一個是顧客類。注意:請勿改動main()主方法和其他已有語句內(nèi)容,僅在下劃線處填入適當(dāng)?shù)恼Z句。程序運行結(jié)果如下:Customer2:sum=50Customer1:sum=50Customer1:sum=100Customer2:sum=100Customer1:sum=150Customer2:sum=150classbank{privatestaticintsum=0;publicstaticvoidadd(int.n,charc){inttmp=sum;______________;try{Thread.sleep(((int)((2000-500+1)*(Math.random())))+500);}catch(InterruptedExceptione){}sum=tmp;System.out.println("Customer"+c+":sum="+sum);}}classcustomerextendsThread{staticcharflag17_2=’1’;publicvoidrun(){charmyflag17_2;synchronized(this){myflag17_2=flag17_2++;}for(inti=1;i<=3;i++)______________________;}}publicclassex17_2{publicstaticvoidmain(Stringargs[]){customerc1=newcustomer();customerc2=newcustomer();c1.start();c2.start();}}標(biāo)準(zhǔn)答案:tmp=tmp+nbank.add(50,myflag17_2)知識點解析:本題主要考查線程的同步和設(shè)計簡單的類來模擬現(xiàn)實問題的簡單應(yīng)用。解題關(guān)鍵是熟練掌握面向?qū)ο蟮木幊趟枷耄煜ava線程的同步編程,會使用Math類的隨機(jī)數(shù)方法。本題中,第1個空,銀行類對客戶的存款進(jìn)行累加;第2個空,在客戶類中,通過使用銀行類的對象bank調(diào)用add()方法實現(xiàn)3次匯款的操作,將錢數(shù)和客戶標(biāo)志作為參數(shù)傳遞給add()方法。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、下面是一個Applet程序,其功能是繪制三維矩形以使該矩形面凹下,并將圖像放入凹下的矩形面中。請改正程序中的錯誤(有下劃線的語句),使程序能輸出正確的結(jié)果。注意:不改動程序的結(jié)構(gòu),不得增行或刪行。程序運行結(jié)果如下:importjava.awt.*;importjava.applet.*;importjava.awt.image.*;importjava.util.*;import.*;/*<appletcode="ex16_3.class"width=800height=400></applet>*/publicclassex16_3extendsApplet{privateImageIMGonClick=over(this)title=放大;publicvoidinit(){URLurl=getCodeBase();IMGonClick=over(this)title=放大=getImage(url,"ex16_3.gif");MediaTrackermt=newMediaTracker();mt.addImage(IMGonClick=over(this)title=放大,1);try{mt.waitForAll();}catch(Exceptione){e.printStackTrace();}setBackground(Color.black);}publicvoidpaint(Graphicsg){intthick=3,x=10,y=10;g.drawImage(IMGonClick=over(this)title=放大,x,y);g.setColor(Color.lightGray);intw=IMGonClick=over(this)title=放大.getWidth(this);inth=IMGonClick=over(this)title=放大.getHeight(this);for(inti=0;i<thick;i++)g.draw3DRect(x,y,w+(2*i),h+(2*i),true);}}ex16_3.html<HTML><HEAD><TITLE>ex16_3</TITLE></HEAD><BODY><appletcode="ex16_3.class"width=800height=400></applet></BODY></HTML>標(biāo)準(zhǔn)答案:newMediaTracker(this)g.drawImage(img,x,y,this)g.draw3DRect(--x,--y,w+(2*i),h+(2*i),false)知識點解析:本題主要考查Applet圖形繪制和圖像顯示。解題關(guān)鍵是掌握繪制三維矩形的基本方法,掌握MediaTracker的基本用法,熟悉圖形界面的坐標(biāo)分布級已通過簡單的方法來獲得坐標(biāo)。本題中,第一處,MediaTracker類的對象初始化需要將this指針作為參數(shù)傳遞給該類的構(gòu)造方法;第二處,Graphics類的對象g調(diào)用drawImage()方法顯示從磁盤文件中讀取的Image對象,第四個參數(shù)需要將this作為參數(shù)傳給該方法;第三處,g調(diào)用draw3DRect()方法繪制三維矩形,最后一個參數(shù)為false表示矩形是凹下的,相反為凸起,第一和第二個參數(shù)作遞減是為了讓顯示效果看起來是矩形的左上方和圖像的左上方有一定的距離,讓人感覺矩形將圖像包含在內(nèi)。國家二級(JAVA)機(jī)試模擬試卷第4套一、基本操作題(本題共1題,每題1.0分,共1分。)1、“角谷猜想”指出:將一個自然數(shù)按以下的一個簡單規(guī)則進(jìn)行運算:若數(shù)為偶數(shù),則除以2;若為奇數(shù),則乘3加1。將得到的數(shù)按該規(guī)則重復(fù)運算,最終可得1。請在下面程序得每條橫線處填寫一個語句,使程序的功能完整(如:輸入34,則輸出結(jié)果為34175226134020105168421)。注意:請勿改動main()主方法和其他已有的語句內(nèi)容,僅在橫線處填入適當(dāng)?shù)恼Z句。importjava.io.*;classJiaoGu{publicstaticvoidmain(Stringargs[]){System.out.print("\n請輸入一個數(shù)");try{BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));Stirngs=br.readLine();_____________________while(a!=1){System.out.print(""+a);if(a%2==1)_______________________elsea=a/2;}System.out.println(""+a);}___________________{}}}標(biāo)準(zhǔn)答案:inta=Integer.parseInt(s);a=a*3+1;catch(Exceptione)知識點解析:本題主要考查異常的捕獲知識、對文件的操作知識。解答本題的關(guān)鍵是熟練掌握異常的捕獲知識、對文件的操作知識。在本題中,inta=Integer.parseInt(s);語句的功能是s這個字符型數(shù)據(jù)轉(zhuǎn)換成整型數(shù)據(jù),a%2==1;語句的功能是判斷變量a是否為奇數(shù),try-catch()結(jié)構(gòu)的功能是異常的捕獲。二、簡單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、請完成下列Java程序:實現(xiàn)打印出自己的源文件的功能。注意:請勿改動main()主方法和其他已有語句內(nèi)容,僅在下劃線處填入適當(dāng)?shù)恼Z句。importjava.io.*;importjava.util.StringTokenizer;publicclassex27_2{publicstaticvoidmain(Stringargs[])throwsIOException{FileInputStreamfis=newFileInputStream("ex27_2.java");DataInputStreamdis=newDataInputStream(fis);Stringstr=null;while(true){__________________;if(str==null){__________________;}StringTokenizerst=newStringTokenizer(str);while(st.hasMoreTokens()){System.out.print(st.nextToken()+"");}System.out.println();}}}標(biāo)準(zhǔn)答案:str=dis.readLine()break知識點解析:本題主要考查文件I/O操作和while語句,if語句的使用。解題關(guān)鍵是熟悉文件I/O操作的基本方法,以及利用while語句和if語句控制程序流程。本題中,第1個空,DataInputStream的對象dis調(diào)用readLine()方法,從輸入流中讀取數(shù)據(jù),并寫給String類的str對象;第二空,如果str為空,則跳出循環(huán)體,這里使用break完成跳轉(zhuǎn)。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、下面是一個Applet程序,其功能是對輸入的字符串進(jìn)行抽取。要求給出抽取的子串在母串中的起始和終止位置,輸出抽取出來的子串。請改正程序中的錯誤(有下劃線的語句),使程序能輸出正確的結(jié)果。注意:不改動程序的結(jié)構(gòu),不得增行或刪行。程序運行結(jié)果如下:importjava.awt.*;importjava.applet.*;publicclassex26_3extendsApplet{TextFieldtf1;TextFieldtf2;TextFieldtf3;Buttonbtn;StringstrResult;publicvoidinit(){Label1=newLabel("字符串:");add(l);tf1=newTextField(20);add(tf1);l=newLabel("開始位置:");add(l);tf2=newTextField(5);add(tf2);l=newLabel("結(jié)束位置:");add(l);tf3=newTextField(5);add(tf3);btn=newButton("抽取");add(btn);strResult="".resize(250,200);}publicvoidpaint(Graphicsg){g.drawString("選中的子串為:",80,140);g.drawString(strResult,80,140);}publicbooleanaction(Evente,Objecto){if(o=="抽取"){try{Stringstr1=tf1.getText();Stringstr2=tf2.getText();Stringstr3=tf3.getText();intfrom=Integer.parseInt(str2);intto=Integer.parseInt(str1);strResult=str1.substring(from,to-1);}catch(StringIndexOutOfBoundsExceptionse){strResult="字符索引越界!";}repaint();returntrue;}elsereturnfalse;}}ex263,htm1<HTML><HEAD><TITLE>ex26_3</TITLE></HEAD><BODY><appletcode="ex26_3.class"width=800height=400></applet></BODY></HTML>標(biāo)準(zhǔn)答案:g.drawString(strResult,80,160)to=Integer.parseInt(str3)strResult=str1.substring(from,to)知識點解析:本題主要考查字符串的取子串操作和Applet圖形繪制以及Applet窗口的設(shè)計等。解題關(guān)鍵是熟悉字符串的操作,會使用awt基本構(gòu)件TextField和Button等以及事件處理機(jī)制。本題中第1處,第3個參數(shù)不應(yīng)該和上一條語句相同,否則輸出的字符串和上面語句輸出的字符串重疊;第2處,應(yīng)該是將str3所接受的輸入作為子串的下界,而不是str1;第3處,調(diào)用substring()方法要注意參數(shù)的含義,第1個是子串開始的位置,第2個是子串結(jié)束的位置。國家二級(JAVA)機(jī)試模擬試卷第5套一、基本操作題(本題共1題,每題1.0分,共1分。)1、下列程序中,給出兩個整數(shù)2和3,分別求2除以3和2乘以3的結(jié)果,要求調(diào)用類ex19_1的方法method()來輸出相應(yīng)的結(jié)果,請將程序補(bǔ)充完整。程序運行結(jié)果如下。0.66666666666666666源程序文件代碼清單如下:publicclassexl91{publicstaticvoidmain(Stringargs[]){intn1=2,n2=3;ex19_1obj19_1=newex19_1();obj19_1.}publicvoidmethod(intx,inty){System.out.println(______);System.out.println(______);}}標(biāo)準(zhǔn)答案:method(n1,n2)(double)x/yx*y知識點解析:本題主要考查Java語言的數(shù)據(jù)類型和結(jié)構(gòu)以及不同數(shù)據(jù)類型之間的轉(zhuǎn)換,和對象調(diào)用方法以及基本的運算操作。解題關(guān)鍵是熟悉Java語言的基本數(shù)據(jù)類型和類型之間的轉(zhuǎn)換,用類的對象來調(diào)用方法,以及熟悉Java語言的基本運算。在本題中,第1空通過類ex19_1的對象obj19_1調(diào)用類ex19_1的方法method(),將變量n1和n2作為參數(shù)傳遞給方法。第2空由于x、y都是int型,則x/y的結(jié)果為0.666…,這會轉(zhuǎn)換為int型,其值為0。所以要對數(shù)據(jù)進(jìn)行類型轉(zhuǎn)換,將x轉(zhuǎn)換為double型則y也轉(zhuǎn)換為double型,因此結(jié)果為double型,值為0.666…。第3空無須做類型轉(zhuǎn)換,直接輸出x*y的值6即可。二、簡單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、請完成下列Java程序:建立一個Applet程序,包括創(chuàng)建一個畫布構(gòu)件、一個面板構(gòu)件,面板構(gòu)件上包含3個按鈕,用來設(shè)置畫布和面板的背景顏色,這3個按鈕(Red、Green、Blue)分別控制畫布和面板背景色改變?yōu)?原色,即紅、綠、藍(lán)。要求畫布寬度為300,高度為200。注意:請勿改動main()主方法和其他已有語句內(nèi)容,僅在下劃線處填入適當(dāng)?shù)恼Z句。源程序文件代碼清單如下:importjava.awt.*;importjava.applet.*;/*<appletcode="ex10_2.class"width=800height=400></applet>*/publicclassex10_2extendsApplet{privatePanelpane110_2;privateCanvascanvas10_2;privateButtonbtn1,btn2,btn3;publicvoidinit(){canvas10_2=newCanvas();canvas10_2.______;canvas10_2.setBackground(Color.black);add(canvas10_2);pane110_2=newPanel();pane110_2.setBackground(Color.black);btn1=newButton("Red");btn2=newButton("Green");btn3=newButton("Blue");pane110_2.add(btn1);pane110_2.add(btn2);pane110_2.add(btn3);______;}publicbooleanaction(Evente,Objecto){if(e.target==btn1){pane110_2.setBackground(Color.red);canvas10_2.setBackground(Color.red);}elseif(e.target==btn2){pane110_2.setBackground(Color.green);canvas10_2.setBackground(Color.green);}elseif(e.target==btn3){canvas10_2.setBackground(Color.blue);pane110_2.setBackground(Color.blue);}returntrue;}}標(biāo)準(zhǔn)答案:resize(300,200)add(pane110_2)知識點解析:本題主要考查畫布構(gòu)件、面板構(gòu)件和按鈕構(gòu)件的使用,以及Applet程序中的事件處理。解題關(guān)鍵是熟悉上述幾種構(gòu)件的創(chuàng)建和使用,能在Applet窗口中控制構(gòu)件的布局,同時還要熟悉Java的事件處理機(jī)制。本題中,第1個空,要根據(jù)題目要求對畫布構(gòu)件的大小進(jìn)行初始化,調(diào)用resize()方法實現(xiàn);第2個空,此空之前的語句只是把Button構(gòu)件放入了Panel構(gòu)件中,還需要將Panel構(gòu)件放入整個應(yīng)用程序中。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、下面是一個Applet程序,實現(xiàn)實心或者空心矩形的繪制。要求鼠標(biāo)在Applet窗口中拖動實現(xiàn)矩形的繪制,可以選擇填充或者空心,按鈕用來清空窗口中的圖像。請改正程序中的錯誤(有下劃線的語句),使程序能輸出正確的結(jié)果。注意:不改動程序的結(jié)構(gòu),不得增行或刪行。源程序代碼文件清單如下:importjava.awt.*;importjava.applet.*;/*<appletcode="ex16_3.class"width=800height=400></applet>*/publicclassex16_3extendsApplet{privateButtonbtnClear;privateCheckboxGroupcbg;privateCheckboxchk1,chk2;privateintupX,upY;privateintdownX,downY;privat
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑導(dǎo)向標(biāo)識系統(tǒng)施工合同工裝
- 塑膠文物保護(hù)合同
- XX中學(xué)聘請數(shù)學(xué)教師合同
- 眼鏡零售合作社股東合同
- 安全生產(chǎn)國網(wǎng)工作票管理辦法
- 臨時替代用車:汽車租賃合同
- 科研特種車輛數(shù)據(jù)傳輸加密
- 城市管理執(zhí)法辦法城市人才篇
- 美容院安全員聘任合同樣本
- 《保險案例分析》課件
- 《萬維網(wǎng)服務(wù)大揭秘》課件 2024-2025學(xué)年人教版新教材初中信息技術(shù)七年級全一冊
- 2024年新華社招聘應(yīng)屆畢業(yè)生及留學(xué)回國人員129人歷年高頻難、易錯點500題模擬試題附帶答案詳解
- 人教版(2024新版)七年級上冊英語Unit 5單元測試卷(含答案)
- (完整版)新概念英語第一冊單詞表(打印版)
- 美食行業(yè)外賣平臺配送效率提升方案
- 中國民用航空局信息中心招聘筆試題庫2024
- 芯片設(shè)計基礎(chǔ)知識題庫100道及答案(完整版)
- 2025屆高考語文一輪復(fù)習(xí):文言文概括和分析 課件
- 年產(chǎn)10萬套新能源車電池托盤項目可行性研究報告寫作模板-申批備案
- 《大學(xué)美育》 課件 4.模塊五 第二十四章 時空綜合的影視藝術(shù)之美
- 2022-2023學(xué)年廣東省廣州市天河區(qū)六年級(上)期末數(shù)學(xué)試卷(含答案)
評論
0/150
提交評論