Java程序設(shè)計(jì)-SCJP認(rèn)證試題(第三部分)_第1頁
Java程序設(shè)計(jì)-SCJP認(rèn)證試題(第三部分)_第2頁
Java程序設(shè)計(jì)-SCJP認(rèn)證試題(第三部分)_第3頁
Java程序設(shè)計(jì)-SCJP認(rèn)證試題(第三部分)_第4頁
Java程序設(shè)計(jì)-SCJP認(rèn)證試題(第三部分)_第5頁
已閱讀5頁,還剩44頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

PAGES沈陽師范大學(xué)軟件學(xué)院OFTWARECOLLEGEOFSHENYANGJava程序設(shè)計(jì)SCJP認(rèn)證題庫(第三版)宋波李晉李妙妍張艷麗編寫姓名:學(xué)號:年級:專業(yè):沈陽師范大學(xué)軟件學(xué)院&軟件工程系前言本書是一本課后課后習(xí)題、SCJP試題的指導(dǎo)性教材,與《Java語言程序設(shè)計(jì)》(自編教材)配套使用。編寫目的是通過一系列的上機(jī)實(shí)驗(yàn)與課后練習(xí)使學(xué)生理解并掌握所學(xué)的知識。作為一本教輔用書,希望讀者把本書作為掌握知識的一個工具和橋梁,從而達(dá)到對Java語言語法機(jī)制和的深入理解,提高讀者的程序設(shè)計(jì)能力,并在學(xué)習(xí)的過程中不斷發(fā)現(xiàn)問題、思考問題、解決問題。本書共由二部分組成。第一部分為針對教材每一章的練習(xí)題,讀者可以進(jìn)行自測并掌握每一章的重點(diǎn)內(nèi)容。第二部分為Java國際認(rèn)證(SCJP)典型試題,通過集中練習(xí),可以使讀者較快地掌握SCJP認(rèn)證的內(nèi)容,為順利過關(guān)作好準(zhǔn)備。本書作為“軟件學(xué)院重點(diǎn)課程建設(shè)”建設(shè)成果的一部分,由軟件工程系的宋波老師組織編寫,參加編寫工作的有李晉、李妙妍和張燕麗等老師。本書的編寫工作,自始至終得到軟件學(xué)院的領(lǐng)導(dǎo)和軟件工程系的大力支持,周傳生教授和李航副教授對于本書的編寫提出了寶貴的建議,本書也吸納和借鑒了中外參考文獻(xiàn)中的知識原理和資料,在此一并致以謝忱。編者2010年7月目錄TOC\o"1-2"\f第1部分:習(xí)題 49第1章:緒論 49第2章:Java語言基礎(chǔ) 50第3章:Java面向?qū)ο筇匦?53第4章:Java高級特征 60第5章:異常處理 62第6章:Java輸入/輸出 65第7章:AWT及AWT事件處理 67第8章:Applet基礎(chǔ)編程 70第9章:Java多線程 71第10章:Java網(wǎng)絡(luò)程序設(shè)計(jì) 72第11章:JDBC技術(shù) 72第2部分:SCJP認(rèn)證試題 73試題1: 73試題2: 85PAGE46第2章:Java語言基礎(chǔ)1.已知“inti=33”,則指出下列的表達(dá)式哪一個是不正確的Abyteb=iBlongm=iCdoubled=3.14+iDintn=++i2.已知有下列聲明語句“inti,j;floatx,y;doubleu,v;”,則下列哪個賦值是合法的()。Ai=x;Bx=u+y;Cx=7.8+j*y;Dv=3.4+i*u;3.當(dāng)執(zhí)行以下程序片段后:“inti=1;intfox[]=newfox[3];intx=fox[i];x=x+i;”,x的值為。4.下面代碼的輸出結(jié)果為()。publicclassSun{publicstaticvoidmain(Stringargs[]){intj=0;for(inti=0;i<10;i++){j=i*10+6;if(j%3!=0){continue;}System.out.println(j);}}}5.指出下列的表達(dá)式哪一個是正確的()。Abooleanb=0Bfloatf=3.1415Cbytea=1286.假如“booleana=true;intb=2,c=6”,則表達(dá)式a&&(b++%2==0)的值為,c+=c--/++b的值為7.下面代碼的輸出結(jié)果為()。publicclassForDemo{publicstaticvoidmain(Stringargs[]){outer:for(inti=1;i<3;i++){inner:for(intj=1;j<3;j++){if(j==2)continueouter;System.out.println(“i=”+i+“j=”+j);}}}}8.假設(shè)“intx=10,y=20,z=30”,在表達(dá)式a=x>y?x:y-2中a的值為,!(x<y)&&(z<20)||(x!=y)的值為9.(a)if(a==b)(b)if(a==b)if(c==d)a=1;和{if(c==d)a=1;}elseb=1;elseb=1;上述(a)和(b)兩組語句是等價的。()10.下列循環(huán)語句的循環(huán)次數(shù)是()。inti=5;do{System.out.println(i--);i--;}while(i!=0);A0B1C5D11.下列數(shù)組的定義中,錯誤的是()。AintA1[2][3]; BintA2[]={1,2,3,4}; CintA3[][]=newint[3][4]; Dint[]A4=newint[5];12.下列代碼的輸出結(jié)果為1。()publicclassTest{ publicstaticvoidmain(Stringargs[]){ intage; age=age+1; System.out.println(age); }}13.下面代碼的輸出結(jié)果為()。publicclassJ_Test{ publicstaticvoidmain(Stringargs[]){ intsum=0; outer: for(inti=1;i<10;i++){ inner: for(intj=1;j<3;j++){ sum+=j; if(i+j>6) breakinner; } } System.out.println("sum="+sum); }}14.下面程序是用do-while語句計(jì)算10的階乘。請?jiān)诿織l橫線處填寫一個語句,使程序的功能完整。注意:請勿改動main()主方法和其它已有的語句內(nèi)容,僅在橫線處填入適當(dāng)?shù)恼Z句。publicclassJ_Test{ publicstaticvoidmain(){ intn=10; longresult=1; do{ } System.out.println("10的階乘為:"+result); }}15.設(shè)x=1,y=2,z=3,則表達(dá)式y(tǒng)+=z--/++x的值為()。 A.3 B.3.5 C.4 D.516.下列程序運(yùn)行后,輸出的結(jié)果是()。publicclassTest5{ publicstaticvoidmain(String[]args){outer: for(inti=0;i<3;i++){inner: for(intj=0;j<2;j++){ if(j==1) continueouter; System.out.println(i+“and”+j); } }}}A.0and0 B.0and1 C.1and0 D.0and01and0 0and1 1and1 1and1 2and0 0and2 1and2 2and217.下列數(shù)組定義及賦值,錯誤的是()。 A.inta[]={1,2,3,4,5}; B.intintArray[]; C.intintArray[]=newint[3]; intArray[1]=1; intArray[2]=2; intArray[3]=3; D.inta[][]=newint[2][]; a[0]=newint[3]; a[1]=newint[4];18.下列程序執(zhí)行以后,輸出結(jié)果為()。publicclassExam01{ publicstaticvoidmain(String[]args){ intx=5; inty=2; floatm=2.5f; m=m<=x%y?x-m:y-m; System.out.println(m); }} A.-0.5 B.-2.5 C.2.5 D.0.5第3章:Java面向?qū)ο筇匦?.下列關(guān)于變量作用域的描述中,不正確的一項(xiàng)是()。A.變量屬性是用來描述變量作用域的。 B.局部變量作用域只能是它所在的方法的代碼段。C.類變量能在類的方法中聲明。 D.類變量的作用域是整個類。2.下面代碼的輸出結(jié)果為()。classParent{ voidprintMe(){ System.out.println("parent"); }}classChildextendsParent{ voidprintMe(){ System.out.println("child"); } voidprintAll(){ super.printMe();printMe(); }}publicclassTestThis{ publicstaticvoidmain(Stringargs[]){ ChildmyC=newChild(); myC.printAll(); }}3.下列程序在編譯以后,哪一行將引起一個編譯時錯誤?()publicclassExam02{intm,n;publicExam02(){}publicExam02(inta){m=a;}publicstaticvoidmain(Stringarg[]){Exam02t1,t2;intj,k;j=0;k=0;t1=newExam02();t2=newExam02(j,k);}} A.line3 B.line7 C.line8 D.line134.下面代碼的輸出結(jié)果為()。classFather{privateintf1,f2;publicFather(intx,inty){f1=x;f2=y;}publicFather(intx){this(x,0);}publicvoiddisplay(){System.out.println(“f1=”+f1+“f2=”+f2);}}classSonextendsFather{privateints1,s2;publicSon(intx,inty,intz){super(x);s1=y;s2=z;}publicvoiddisplay(){super.display();System.out.println(“s1=”+s1+“s2=”+s2);}}publicclassTest{publicstaticvoidmain(Stringargs[]){Fatherf=newSon(5,6,7);f.display();}}5.下面關(guān)于構(gòu)造方法的說法哪個選項(xiàng)是正確的()。A構(gòu)造方法不能被重載B構(gòu)造方法不能被繼承C構(gòu)造方法可以返回一個對象的引用D構(gòu)造方法可以直接利用對象名調(diào)用6.關(guān)鍵詞用來引用父類中的成員變量和方法,關(guān)鍵詞用來指向當(dāng)前對象自身。7.下面代碼的輸出結(jié)果為()。classA{publicvoidprt(){System.out.println(“1”}publicA(){System.out.println(“A”);}}publicclassBextendsA{publicvoidprt(){super.prt();System.out.println(“2”}publicB(){System.out.println(“B”);}publicstaticvoidmain(Stringargs[]){Aa=newB();a.prt();}}8.下面代碼的輸出結(jié)果為()。publicclassPerson{Stringname;intage;Stringsex;publicPerson(Stringname,intage,Stringsex){=name;this.age=age;this.sex=sex;}publicPerson(Stringname,intage){this(name,age,“male”);}publicPerson(Stringname){this(name,30);}publicstaticvoidmain(Stringargs[]){Personp1=newPerson(“Tom”,18);Personp2=newPerson(“John”);System.out.println(+“-”+p1.age+“-”+p1.sex);System.out.println(+“-”+p2.age+“-”+p2.sex);}}9.在子類中重寫父類的方法只需要滿足相同的方法名和參數(shù)列表即可。()10.在一個類中可以定義同名的多個方法,它們之間的區(qū)別在于參數(shù)列表不同,這種叫做方法的。如果父類中原有的方法不能滿足子類的要求,可以在子類中對父類的方法重新編寫代碼,這叫做方法的。11.一個構(gòu)造方法可以返回一個對象的引用,即返回值類型是引用類型。()12.下面代碼的輸出結(jié)果為()。classOverloadDemo{voidtest(){System.out.println(“Noparameters”);}voidtest(inta,intb){System.out.println(“aandb:”+a+“and”+b);}voidtest(doublea){System.out.println(“Insidetestdoublea:”+a);}}publicclassOverload{publicstaticvoidmain(Stringargs[]){OverloadDemoob=newOverloadDemo();ob.test();ob.test(10,20);ob.test(123.2);}}13.下面代碼的輸出結(jié)果為()。classGraphix{voidcalArea(){System.out.println(“求圖形面積”);}}classRectextendsGraphix{voidcalArea(){System.out.println(“求長方形面積”);}}classCircleextendsGraphix{voidcalArea(){System.out.println(“求圓面積”);}}publicclassTest{publicstaticvoidmain(Stringargs[]){Graphixgc=newRect();gc.calArea();gc=newCircle();gc.calArea();}}14.在下列關(guān)于方法的重載和覆蓋的描述中,錯誤的是()。A方法重載是指在同一個類中允許出現(xiàn)方法參數(shù)個數(shù)、順序不同而方法名相同的若干方法B方法覆蓋是指在父類和子類之間出現(xiàn)的方法頭相同而方法體不同的多個方法C方法重載是在編譯時進(jìn)行選擇的D方法覆蓋是在編譯時進(jìn)行選擇的15.下列代碼的輸出結(jié)果是___________。publicclassOct{ publicstaticvoidmain(Stringargv[]){ Octo=newOct(); o.amethod(); } publicvoidamethod(){ intoi=012; System.out.println(oi); }16.在下列代碼中第___________行將產(chǎn)生編譯錯誤。1:classExample{2: Stringstr;3: publicExample(){4: str="example";5: }6: publicExample(Strings){7: str=s;8: }9:}10:classDemoextendsExample{11:}12:publicclassOct{13: publicvoidf(){14: Exampleex=newExample("Good");15: Demod=newDemo("good");16: }17:}17.構(gòu)造方法一般不允許有任何返回值,因此需要在返回類型處標(biāo)注為void。()18.下面代碼的輸出結(jié)果為()。classJ_Base{ publicvoidmb_method(){ System.out.println("Base"); }}publicclassJ_TestextendsJ_Base{ publicvoidmb_method(){ System.out.println("Test"); } publicstaticvoidmain(Stringargs[]){ Objecta=newJ_Test(); ((J_Base)a).mb_method(); }}19.下面代碼的輸出結(jié)果為()。publicclassInheritTest1{publicstaticvoidmain(Stringargs[]){ Aaa=newA();Bbb=newB();aa.show();bb.show();}}publicclassA{inta=1;doubled=2.0;voidshow(){System.out.println("ClassA:"+"\ta="+a+"\td="+d); }}publicclassBextendsA{ floata=3.0f; Stringd="Javaprogram.";intb=4; voidshow(){System.out.println("ClassA:"+"\ta="+super.a+"\td="+super.d);super.show();System.out.println("ClassB:"+"\ta="+a+"\td="+d+"\tb="+b); }}第4章:Java高級特征1.如果一個方法只有方法的聲明,而沒有方法的實(shí)現(xiàn),則成為方法。該方法通過關(guān)鍵字來定義。2.類的聲明“publicclassTestJavaextendsBaseJavaimplementsRunable{}”中,定義的類名是

,其父類是

,實(shí)現(xiàn)了

接口。含有這個類的源程序必須保存為

(寫出包括擴(kuò)展名的文件名)。3.下面是類的定義,將程序補(bǔ)充完整。classA{ Strings;inta=66; A(Strings1){ s=s1; } staticintgeta(){ returna; }}publicclass{ intx,y; MyClass(inti,){ x=i; y=j; }}4.請?jiān)谙旅娉绦虻膭澗€處填上適當(dāng)?shù)恼Z句,使程序能正常運(yùn)行。classX{ abstractvoidcallme(); voidmetoo(){ System.out.println("metoo()方法"); }}classYX{ voidcallme(){ System.out.println("重寫的callme()方法"); }}5.當(dāng)你編譯和運(yùn)行下列的代碼時,會出現(xiàn)下面選項(xiàng)中的哪種情況()。 publicclassPvf{ staticbooleanPaddy;publicstaticvoidmain(String[]args){System.out.println(Paddy);}}A編譯時錯誤 B編譯通過并輸出結(jié)果falseC編譯通過并輸出結(jié)果true D編譯通過并輸出結(jié)果null6.欲構(gòu)造ArrayList類的一個實(shí)例,此類繼承了List接口,下列哪個方法是正確的()。AArrayListmyList=newObject();BArrayListmyList=newList();CListmyList=newArrayList();DListmyList=newList();7.interfacePrintable{voidprint(){};}上述接口的定義是正確的。()8.Java語言中同一包(package)中的類不能同名,否則會產(chǎn)生命名沖突。()9.在類的定義中使用權(quán)限修飾符來保護(hù)類的變量和方法,其中類中帶有private的成員只能被這個類自身訪問。()10.下列哪個類的聲明使得該類不能再派生子類()。AstaticclassFooBar{}BabstractclassFooBar{}CpublicclassFooBar{}DfinalclassFooBar{}11.一個非抽象類要實(shí)現(xiàn)某個接口,就必須實(shí)現(xiàn)該接口中的所有抽象方法。()12.下面代碼的輸出結(jié)果為()。publicclassTestEquals{publicstaticvoidmain(Stringargs[]){Strings1=newString(“HelloWorld!”);Strings2=newString(“HelloWorld!”);if(s1==s2){System.out.println(“s1==s2”}else{System.out.println(“s1!=s2”}if(s1.equals(s2)){System.out.println(“s1isequaltos2”}else{System.out.println(“s1isnotequaltos2”}}}13.在類的修飾符中,規(guī)定只能被同一包類所使用的修飾符是()。ApublicB默認(rèn)CfinalDabstract14.Java語言中,定義子類時,使用關(guān)鍵字___________來給出父類名。如果沒有指出父類,則該類的默認(rèn)父類為___________類。15.接口中所定義的常量具有___________和___________的屬性,而其方法具有public和___________屬性。16.頂層類的訪問控制修飾符為___________和___________。17.下面代碼的輸出結(jié)果為()。classJ_Class{ staticintm_data=0;}classJ_Test{ publicstaticvoidmain(Stringargs[]){ J_Classa=newJ_Class(); J_Classb=newJ_Class(); a.m_data=1; b.m_data=2; System.out.println(a.m_data); }}18.用整型數(shù)10創(chuàng)建一個Integer類的對象,下列語句中能完成上述功能的一個是()。 A.Integeri=newInteger(10); B.Integeri=10; C.inti=10;D.Integeri=Integer(10);19.運(yùn)行下列代碼將產(chǎn)生編譯錯誤:publicclassPerson{staticintarr[]=newint[10];publicstaticvoidmain(Stringa[]){System.out.println(arr[1]);}}第5章:異常處理1.如果下列代碼在調(diào)用oneMethod()時一定會產(chǎn)生某個異常對象,則哪一條語句肯定不會顯示出來()。publicvoidtest(){

try{oneMethod();//調(diào)用方法oneMethod()

System.out.println(“condition1”);

}catch(ArrayIndexOutOfBoundsExceptione){

System.out.println(“condition2”);

}catch(Exceptione){

System.out.println(“condition3”);

}finally{

System.out.println(“finally”);

}}Acondition1Bcondition2Ccondition3 D2.在Java的異常處理語句try-catch-finally中,語句后面是可能產(chǎn)生異常的代碼,語句后面是捕獲到某種異常對象時進(jìn)行處理的代碼,語句后面是無論是否捕獲到異常都必須執(zhí)行的代碼。3.下面代碼的輸出結(jié)果為()。publicclassTestException{publicstaticvoidmain(Stringargs[]){Stringfriends[]={“Lisa”,“Bily”};try{for(inti=0;i<4;i++){System.out.println(friends[i]);}}catch(ArrayIndexOutOfBoundsExceptione){System.out.println(“indexerr”);}System.out.println(“Thisistheend”);}}4.設(shè)下列try-catch語句塊中的第二個語句s2將引起一個異常,那么以下哪段代碼肯定不會被執(zhí)行()。try{s1;s2;s3;}catch(Exceptione1){}finally{s4;}As1 Bs2 Cs3 Ds45.異常處理具體有兩種方式:和。6.下面代碼的輸出結(jié)果為()。publicclassTestException{publicstaticvoidmain(Stringargs[]){inti=0,num=0;ints[]={2,4,6};try{while(i<4){num+=s[i];i++;}System.out.println(“Normalended.”);}catch(Exceptione){System.out.println(“indexerr”);}finally{System.out.println(“thisisanend”);}}}7.在方法中聲明將產(chǎn)生的異常拋出使用的關(guān)鍵詞是throw。()8.下列關(guān)于異常處理的描述中,錯誤的是()。A程序運(yùn)行時出現(xiàn)的異常是通過系統(tǒng)默認(rèn)的異常處理程序進(jìn)行處理的B在程序中可以使用try-catch語句捕捉異常和處理異常事件C對于捕獲的異常只能在當(dāng)前方法中處理D使用throw語句可將異常拋出到調(diào)用當(dāng)前方法的方法中處理9.下面代碼的輸出結(jié)果為()。publicclassJ_Example{ publicstaticvoidmain(Stringargs[]){ try{ try{ inti=1/0; } catch(Exceptione){ System.out.print("1");} finally{ System.out.print("2");} } catch(Exceptione){ System.out.print("3"); } finally{ System.out.print("4");} System.out.print("5\n"); }}10.下面代碼的輸出結(jié)果為()。classExcepTest{publicstaticvoidmain(Stringargs[]){try{method();}catch(Exceptione){System.out.println('m');}System.out.println('n');}staticvoidmethod(){try{wrench();System.out.println("a");}catch(ArithmeticException

e){System.out.println("b");}finally{System.out.println("c");}System.out.println("d");}staticvoidwrench(){thrownewNullPointerException();}}第6章:Java輸入/輸出1.對于java.io包中的所有I/O類,根據(jù)數(shù)據(jù)流所關(guān)聯(lián)的是數(shù)據(jù)源還是其他數(shù)據(jù)流,可分為()和()。2.下列程序的功能是讀取并輸出指定文件ReadFile.java的內(nèi)容。在劃線處加入適當(dāng)代碼,使程序能夠正常運(yùn)行。1:importjava.io.*;2:publicclassReadFile{3:publicstaticvoidmain(Stringargs[]){4:Filef=newFile(“ReadFile.java”);5:try{6:FileReaderfr=;//創(chuàng)建一個從文件f讀取數(shù)據(jù)的文件輸入流fr7:BufferedReaderbr=;//創(chuàng)建一個緩存輸入流,套接文件流fr8:Strings=br.readLine();9:while(s!=null){10:;//在屏幕上顯示出字符串str11:s=br.readLine();12:}13:fr.close();14:br.close();15:}catch(IOExceptione){16:System.out.println(e.getMessage());}17:}18:}3.下列哪條語句可以正確創(chuàng)建出一個BufferedReader數(shù)據(jù)流()。AnewBufferedReader(newFileReader(“myFile.txt”));BnewBufferedReader(newFileInputStream(“myFile.txt”));CnewBufferedReader(newDataInputStream(“myFile.txt”));DnewBufferedReader(“myFile.txt”);4.Java在System類中定義了與系統(tǒng)標(biāo)準(zhǔn)輸入/輸出相聯(lián)系的三個流,他們是()、()和()。5.在Java的輸入/輸出中,節(jié)點(diǎn)流與過濾流的主要的區(qū)別在于處理的流的方向不同。()6.InputStream類是輸入流類,它是所有字符輸入流類的父類。()7.下列程序?qū)崿F(xiàn)了從鍵盤輸入字符串,將該字符串存入String類的對象str中,并在屏幕上顯示出該字符串。在劃線處加入適當(dāng)代碼,使程序能夠正常運(yùn)行。1:importjava.io.*;2:publicclassDemo{3:publicstaticvoidmain(Stringargs[]){4:InputStreamReaderisr=;5:BufferedReaderbr=newBufferedReader(isr);6:try{7:Stringstr=;//將br讀入的一行字符串存入str8:;//在屏幕上顯示出字符串str9:}catch(IOExceptione){10:System.out.println(e.getMessage());11:}12:}13:}8.要調(diào)用類java.io.InputStream的read或close方法,就必須處理異常,該異常的具體類型是___________。9.在I/O流FileInputStream、BufferedInputStream、DataInputStream和ByteArrayInputStream中,節(jié)點(diǎn)流的個數(shù)是___________。第7章:AWT及AWT事件處理1.下述哪個方法可以將MenuBar加入到Frame中()。AsetMenu()BsetMenuBar()Cadd()DaddMenuBar()2.在java.awt包中,

類是一個容器,可以容納其他組件和容器,但它卻不能獨(dú)立存在。3.下面程序的運(yùn)行結(jié)果為()(注意:本題請畫出運(yùn)行結(jié)果,可以文字描述來作輔助說明。)importjava.awt.*;publicclassGridLayoutWindow{publicstaticvoidmain(Stringargs[]){Framef=newFrame(“GridLayoutExample”);f.setLayout(newGridLayout(2,3));Buttonb1=newButton(“B1”Buttonb2=newButton(“B2”Buttonb3=newButton(“B3”Buttonb4=newButton(“B4”Buttonb5=newButton(“B5”Buttonb6=newButton(“B6”f.add(b1);f.add(b2);f.add(b3);f.add(b4);f.add(b5);f.add(b6);f.pack();f.setVisible(true);}}4.編寫程序。如圖所示,窗口Frame是流式布局管理器,標(biāo)題為“Test”,當(dāng)用戶每次鼠標(biāo)單擊“Start”按鈕時,程序都會在屏幕上的DOS窗口中輸出一行字符串“單擊成功!”。5.java.awt包中主要包括三個概念,它們是組件、

。6.下面程序的運(yùn)行結(jié)果為()(注意:本題請畫出運(yùn)行結(jié)果,可以文字描述來作輔助說明。)importjava.awt.*;publicclassGridLayoutWindow{publicstaticvoidmain(Stringargs[]){Framef=newFrame(“GridLayoutExample”);f.setLayout(newGridLayout(2,2));Labelb1=newLabel(“Label1”Buttonb2=newButton(“Button1”Labelb3=newLabel(“Label2”Buttonb4=newButton(“Button2”f.add(b1);f.add(b2);f.add(b3);f.add(b4);f.pack();f.setVisible(true);}}7.下面是一個單擊按鈕事件響應(yīng)的,其運(yùn)行效果為:用戶每次鼠標(biāo)單擊“PressMe”按鈕時,程序都會在DOS命令窗口中輸出一行字符串“abuttonhasbeenpressed”。請?jiān)趧澗€處填寫語句,完成此程序,使它能正確執(zhí)行。1:importjava.awt.*;2:import;3:publicclassTestActionEvent{4:publicstaticvoidmain(Stringargs[]){5:Framef=newFrame(“Test”);6:Buttonb=newButton(“PressMe”);//創(chuàng)建一個按鈕,標(biāo)簽為PressMe7:Monitorbh=newMonitor();//創(chuàng)建一個監(jiān)聽器類實(shí)例bh8:b.;//為按鈕b注冊監(jiān)聽器9:f.pack();10:f.setVisible(true);11:}12:}13:classMonitor{//定義監(jiān)聽器類,實(shí)現(xiàn)監(jiān)聽器接口14:publicstaticvoidmain(Stringargs[]){15:publicvoidactionPerformed(ActionEvente){16:System.out.println(“abuttonhasbeenpressed”);17:}18:}19:}8.AWT事件處理模型中主要包含三類對象:事件、事件源和事件處理器。()9.下面哪條語句是使用網(wǎng)格布局管理器將一個Frame的實(shí)例frm分成1行3列()。Afrm.setLayout(newGridLayout(1,3));Bfrm.setLayout(newGridLayout(3,1));Cfrm.setLayout(newGridLayout(3));Dfrm.setLayout(newGridLayout(1));10.默認(rèn)情況下,Applet使用流式布局管理器(FlowLayout)。()11.下面程序的運(yùn)行結(jié)果為()(注意:本題請畫出運(yùn)行結(jié)果,可以文字描述來作輔助說明。)importjava.awt.*;publicclassFlowLayoutWindow{publicstaticvoidmain(Stringargs[]){Framef=newFrame(“FlowLayoutExample”);f.setLayout(newFlowLayout());Buttonb1=newButton(“OK”);Buttonb2=newButton(“OPEN”);Buttonb3=newButton(“CLOSE”);f.add(b1);f.add(b2);f.add(b3);f.setSize(100,100);f.setVisible(true);}}12.在AWT中,所有GUI標(biāo)準(zhǔn)組件類的父類是()。AButtonBListCComponentDContainer13.在下列容器中最簡單的無邊框的又不能移動和縮放的只能包含在另一種容器中的容器是()。AWindow BDialog CFrame DPanel14.所有事件類的父類是()。

AActionEventBAwtEventCKeyEventDMouseEvent15.在AWT中,每種類型的事件都定義了相應(yīng)的事件處理接口,即___________。委托方式事件處理機(jī)制的實(shí)現(xiàn)包括______________________和______________________。16.下面程序的運(yùn)行結(jié)果為()(注意:本題請畫出運(yùn)行結(jié)果。)importjava.awt.*;publicclassFrTest{publicstaticvoidmain(Stringargs[]){newFrameOut();}}classFrameOutextendsFrame{Buttonbtn1,btn2,btn3;FrameOut(){super("Buttons");setLayout(newFlowLayout());btn1=newButton("B1");add(btn1);btn2=newButton("B2");add(btn2);btn3=newButton("B3");add(btn3);setSize(300,200);setVisible(true);}}17.FlowLayout是和的默認(rèn)布局管理器。第8章:Applet基礎(chǔ)編程1.Applet的生命周期包括Applet的、和幾個狀態(tài)。2.下列哪個方法與Applet的顯示無關(guān)()。Adraw()Bpaint()Crepaint()Dupdate()3.在Applet的生命周期中,當(dāng)打開瀏覽器窗口時,系統(tǒng)會首先自動調(diào)用

方法;而當(dāng)用戶離開當(dāng)前窗口時,系統(tǒng)會自動調(diào)用

方法。4.下面是在瀏覽器中顯示“HelloWorld”的Applet小程序。在劃線處加入適當(dāng)代碼,使程序能夠正常運(yùn)行。1:importjava.awt.*;2:import;3:publicclassHelloWorldextendsApplet{4:Stringtext=“HelloWorld”;5:pubicvoidpaint(Graphicsg){6:g.;7:}8:}5.在JavaApplet程序運(yùn)行時,當(dāng)瀏覽器離開含有Applet的網(wǎng)頁時被調(diào)用的方法是()。Astop()Bstart()Cinit()Ddestroy()6.開發(fā)一個Applet小程序的第一步是需要引入相關(guān)的包和類,該語句為()。7.當(dāng)用戶退出瀏覽器時,Applet從系統(tǒng)中撤出停止自身執(zhí)行,最后調(diào)用的方法是stop()。()8.下列<Applet>的屬性中屬于可選屬性的一項(xiàng)是()。A<WIDTH>B<HEIGHT>C<CODE>D<CODEBASE>9.Java的用戶程序分為兩類,它們分別是和。10.編寫Applet過程的第一步是要定義一個類型的類,且該類必須是

類的子類。11.下列關(guān)于Applet程序的描述中,錯誤的是(

)。AApplet程序是一種獨(dú)立的程序,它經(jīng)過編譯后可運(yùn)行BApplet程序的源文件的擴(kuò)展名為.javaCApplet程序運(yùn)行時要把它寫到一個HTML文件中D使用AppletViewer命令運(yùn)行Applet程序的字節(jié)碼文件被嵌入的HTML文件,便可得到運(yùn)行結(jié)果12.如果一個Java程序既是應(yīng)用程序,又是小應(yīng)用程序,那么它必定含有類___________的子類,同時含有成員方法___________。13.Applet是一個面板容器,它的默認(rèn)布局管理器是___________。第9章:Java多線程1.下列說法中錯誤的一項(xiàng)是()。A線程一旦創(chuàng)建,則立即自動運(yùn)行B線程創(chuàng)建后需要調(diào)用start()方法,將線程置于可運(yùn)行狀態(tài)C調(diào)用線程的start()方法后,線程也不一定能立即執(zhí)行D線程處于可運(yùn)行狀態(tài),意味著它可以被調(diào)度2.Java的線程是通過

類來實(shí)現(xiàn)的,每個線程都是通過某個特定的線程類對象所對應(yīng)的

方法來完成其操作的,該方法成為線程體。3.當(dāng)編譯運(yùn)行下列代碼時,會發(fā)生下列哪種情況()。 publicclassBorleyextendsThread{publicstaticvoidmain(String[]args){Borleyb=newBorley;b.start();}publicvoidrun{System.out.println(“Running”);} }A編譯和運(yùn)行都通過,但是沒有輸出結(jié)果B編譯通過,運(yùn)行時輸出RunningC編譯時錯誤,因?yàn)闆]有線程對象D編譯時通過,但運(yùn)行時錯誤4.在一個類中下述哪一個方法可以作為新線程執(zhí)行的起始點(diǎn),是由系統(tǒng)調(diào)用的()。Apublicvoidstart()Bpublicvoidrun()Cpublicvoidinit()Dpublicvoidrunnable()5.創(chuàng)建線程的兩種方法為()和()。第10章:Java網(wǎng)絡(luò)程序設(shè)計(jì)1.Java中有關(guān)網(wǎng)絡(luò)的類都包含在

包中。2.Socket通信機(jī)制提供了兩種通信方式,分別是

。第11章:JDBC技術(shù)1.下面不屬于JDBCAPI的基本功能的選項(xiàng)是()。A建立與一個數(shù)據(jù)源的連接B向數(shù)據(jù)源發(fā)送查詢和更新語句C獲取并處理得到的結(jié)果D對數(shù)據(jù)庫進(jìn)行備份和數(shù)據(jù)恢復(fù)處理2.在Java中,JDBC是指()。AJava連接的數(shù)據(jù)庫名稱BJava類編譯程序CJava程序與數(shù)據(jù)庫連接的一種機(jī)制DJava程序與瀏覽器交互的一種機(jī)制3.JDBC驅(qū)動有四種類型:、本地API部分Java驅(qū)動、網(wǎng)絡(luò)協(xié)議完全Java驅(qū)動、。4.在JDBC中,指向數(shù)據(jù)庫的URL中包含:、和數(shù)據(jù)庫名稱。第3部分:SCJP認(rèn)證試題試題1:1.Whichofthefollowingrangeofshortiscorrect?A.-27~27-1B.0~216-1 C.-215~~215-1D.-231~~231-12.Whichdeclarationsofidentifiersarelegal?A.$personsB.TwoUsersC.*point D.thisE._endline3.Whichstatementofassigningalongtypevariabletoahexadecimalvalueiscorrect?A.longnumber=345L; B.longnumber=0345;C.longnumber=0345L; D.longnumber=0x345L;4.Whichofthefollowingfragmentsmightcauseerrors?A.Strings="Gonewiththewind";Stringt="good";Stringk=s+t;B.Strings="Gonewiththewind";Stringt;t=s[3]+"one";C.Strings="Gonewiththewind";Stringstandard=s.toUpperCase();D.Strings="homedirectory";Stringt=s-"directory";5.Gientheflowingcode:classPerson{privateinta;publicintchange(intm){returnm;}}publicclassTeacherextendsPerson{publicintb;publicstaticvoidmain(Stringarg[]){Personp=newPerson();Teachert=newTeacher();inti;//pointx}}Whicharesyntacticallyvalidstatementat//pointx?A.i=m;B.i=b;C.i=p.a;D.i=p.change(30);E.i=t.b;6.Whichlayoutmanagerisusedwhentheframeisresizedthebuttons'spositionintheFramemightbechanged?A.BorderLayoutB.FlowLayoutC.CardLayoutD.GridLayout7.Giventhefollowingcodefragment:1:publicvoidcreate(){2:VectormyVect;3:myVect=newVector();4:}Whichofthefollowingstatementsaretrue?A.Thedeclarationonline2doesnotallocatememoryspaceforthevariablemyVect.B.Thedeclarationonline2allocatesmemoryspaceforareferencetoaVectorobject.C.Thestatementonline2createsanobjectofclassVector.D.Thestatementonline3createsanobjectofclassVector.E.Thestatementonline3allocatesmemoryspaceforanobjectofclassVector.8.Whichofthefollowingansweriscorrecttoexpressthevalue8inoctalnumber?A.010B.0x10C.089.WhicharenotJavakeywords?A.TRUEB.sizeofC.constD.superE.void10.Whichofthefollowingstatementsaretrue?A.Theequals()methoddeterminesifreferencevaluesrefertothesameobject.B.The==operatordeterminesifthecontentsandtypeoftwoseparateobjectsmatch.C.Theequals()methodreturnstrueonlywhenthecontentsoftwoobjectsmatch.D.11.Whichstatementsaboutinheritancearetrue?A.InJavaprogramminglanguageonlyallowssingleinheritance.B.InJavaprogramminglanguageallowsaclasstoimplementonlyoneinterface.C.InJavaprogramminglanguageaclasscannotextendaclassandimplementainterfacetogether.D.InJavaprogramminglanguagesingleinheritancemakescodemorereliable.12.Giventhefollowingcode:1:classPerson{2:publicvoidprintValue(inti,intj){//...}3:publicvoidprintValue(inti){//...}4:}5:publicclassTeacherextendsPerson{6:publicvoidprintValue(){//...}7:publicvoidprintValue(inti){//...}8:publicstaticvoidmain(Stringargs[]){9:Persont=newTeacher();10:t.printValue(10);11:}12:}Whichmethodwillthestatementonline10call?A.online2B.online3C.online613.WhicharenotJavaprimitivetypes?A.shortB.BooleanC.unitD.float14.Usetheoperators"<<",">>",whi

溫馨提示

  • 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

提交評論