版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
Java綜合練習(xí)題一、單項選擇題(共30題)。在每小題列出的四個選項中只有一個選項是符合題目要求的,請將正確選項的字母填在題中的括號內(nèi)。1、Java源程序文件的擴展名為()。A、.javaB、.classC、.htmlD、.txtA2、為了使名為HelloWorld的類成功編譯和運行,必須滿足的條件()。A、HelloWorld類必須定義在HelloWorld.java文件中B、HelloWorld類必須定義為public類C、HelloWorld類必須導(dǎo)入java.lang包D、HelloWorld類中必須定義正確的main()方法D3、Java語言中提供的標(biāo)準(zhǔn)Java類庫存儲在()的包中。A、java.langB、java.awtC、java.utilD、java.appletA4、以下()是在Java源程序中出現(xiàn)的正確次序A、package,class,importB、class,package,importC、package,import,classD、import,class,packageC5、java.io包的File類是()。A、字節(jié)流類B、字符流類C、對象流類D、非流類D6、以下可以給對象加互斥鎖的關(guān)鍵字是()。A、serializeB、staticC、transientD、synchronizedD7、以下可用于定義線程執(zhí)行體的方法是()A、start()B、run()C、init()D、jion()B8、Java中實現(xiàn)輸入/輸出操作的類庫在( )包中。A、java.output B、java.input C、java.io D、java.lang.io
C9、在java源程序的一個類中同時定義了多個同名的方法,同名的各個方法的形式參數(shù)的個數(shù)、類型或次序各不相同。這種面向?qū)ο蟮某绦蛱匦员环Q之為()A、覆蓋B、隱藏C、重載D、封裝C10、有Java語句如下,則說法正確的是( )int[]a,b=newint[5];A、此語句是錯誤的 B、a.length的值為5 C、b.length的值為5 D、a.length和b.length的值都為5C11、Java應(yīng)用程序的入口方法是()A、start()B、init()C、main()D、run()C12、以下敘述正確的是()。A、匿名對象肯定是垃圾對象B、程序可以在指定的時間內(nèi)調(diào)用垃圾回收器釋放內(nèi)存C、垃圾回收器可以確保Java程序不會產(chǎn)生內(nèi)存泄露D、對象的finalize()方法在對象被垃圾回收器回收之前獲得調(diào)用D13、以下不屬于面向?qū)ο蟪绦蛟O(shè)計特性的是()A、封裝B、多態(tài)C、繼承D、重載E、耦合
E14、在Java程序中聲明一個數(shù)組,錯誤的是( )A、inta[]; B、inta[][]; C、float[]a[]; D、floata[10];D15、下列屬于Java基本數(shù)據(jù)類型的是()。A、IntegerB、DoubleC、StringD、charD16、只包含一個由public修飾的Java類Abc的Java源程序的正確取名為()。A、AbcB、abc.javaC、Abc.javaD、只要擴展名為.java的任意一個合法的文件名C17、在Java程序中有定義intx[][]=newint[4][5];則x.length和x[3].length的值分別是()A、5和3 B、5和4 C、4和3 D、4和5D18、設(shè)有如下的程序publicclassTest{publicstaticvoidmain(String[]args){StringSa=args[1];StringSb=args[2];StringSc=args[3];System.out.println("Sc="+Sc);}以下使得執(zhí)行該程序的輸出結(jié)果為Sa=2的命令行是()。A、javaTest2222B、javaTest
4242C、javaTest
2134D、javaTest
4321BE19、以下哪一個聲明的方法強迫它的子類必須實現(xiàn)(implements)它()。A、publicdoublemethod()B、staticvoidmethod(doubleX){}C、privatedoublemethod()D、protectedvoidmethod(doubleX){}E、abstractpublicvoidmethod()20、下列定義的類中,可以用來創(chuàng)建可運行類的正確方法是()。A、publicclassXimplementsRunable{publicvoidrun{…}}B、publicclassXimplementsThread{publicvoidrun{…}}C、publicclassXimplementsThread{publicintrun{…}}D、publicclassXimplementsRunable{protectedvoidrun{…}}
AA21、以下是創(chuàng)建File對象的代碼,錯誤的是( )A、Filef4=newFile("\Thedir\myfile.txt"); B、Filef2=newFile("/Thedir","myfile.txt");C、Filef1=newFile("/Thedir/myfile.txt"); D、Filef3=newFile("\\Thedir\\myfile.txt");D22、用Thread子類實現(xiàn)多線程的步驟順序是()A.聲明Thread類的子類,創(chuàng)建Thread子類的實例,讓線程調(diào)用start()方法B.聲明Thread類的子類,在子類中重新定義run()方法,創(chuàng)建Thread子類的實例C.創(chuàng)建Thread子類的實例,讓線程調(diào)用start()方法D.聲明Thread類的子類,在子類中重新定義run()方法,創(chuàng)建Thread子類的實例,讓線程調(diào)用start()方法23、在Java程序中有代碼如下:
System.out.println((newStringTokenizer("Weareastudent","a")).countTokens());則輸出結(jié)果為( )A:Iamastudent B:2 C:1 D:3DA24、Java程序中需要檢測錯誤的代碼放在什么地方()A.try塊B.catch塊C.finally塊D.throws塊C25、在編寫異常處理的Java程序中,每個catch語句塊都應(yīng)該與()語句塊對應(yīng),使得用該語句塊來啟動Java的異常處理機制。A.if…elseB.switchC.tryD.throw26、下面關(guān)于類及其修飾符的一些描述,不正確的是()A.abstract類只能用于派生子類,不能用于創(chuàng)建abstract類的對象B.final和abstract不可以同時修飾一個類C.final類不僅可以用于派生子類,也可以用于創(chuàng)建final類的對象D.abstract方法必須在abstract類(或接口)中聲明,但abstract類的定義中可以沒有abstract方法C27、若需要定義類變量或類方法,只能使用的關(guān)鍵字是()A.packageB.privateC.publicD.staticDB28、若在某個類中定義如下的方法:abstractintgetProduct(intx,inty);則該方法是()A.本地方法B.抽象方法C.最終方法D.靜態(tài)方法C29、以下哪個不是合法的構(gòu)造RandomAccessFile對象的代碼()A.RandomAccessFile(newFile(“C:\\MyFile1\\dir1\\..\\Test.java”),”rw”)B.RandomAccessFile(“C:\\MyFile1\\Test.java”,”r”)C.RandomAccessFile(“C:\\MyFile1\\Test.java”)D.RandomAccessFile(“C:/MyFile1/Test.java”,”wr”)30、當(dāng)使用FileInputStream類中的read()方法時,如果沒有讀入一個字節(jié)數(shù)據(jù)時,返回值為()A、0 B、false C、true D、-1D二、判斷題(正確用√錯誤用×標(biāo)記)(共27題)××1、一個Java類可以有多個父類。()2、使用length()方法可以獲取字符串或數(shù)組的長度。()3、可以用new來創(chuàng)建abstract類的實例對象。
()4、子類對象中要調(diào)用父類的成員方法,必須使用關(guān)鍵字super。
()5、static方法不可以重載。
()6、JavaApplet小程序應(yīng)該在瀏覽器中執(zhí)行。
()7、一個類如果實現(xiàn)了某個接口,那么它必須重載該接口中的所有方法。
()8、abstract與final不能同時修飾同一個類。
()×××√
×√
9、Java源程序中區(qū)分字母的大小寫。()
√
10、Java程序中,可以將boolean類型的數(shù)據(jù)和其他類型的數(shù)據(jù)在一起運算。()×√×11、abstract類中不可以有private成員。
()12、static方法中可以引用非static成員。
()13、局部變量只能是方法體內(nèi)定義的變量。
()14、被子類繼承的父類方法,在子類中不能重載,只能重寫(或覆蓋)。
()15、抽象類中至少要有一個抽象方法。
()16、接口是一種特殊的抽象類,只要把抽象類中的方法都定義為抽象的,就可把此抽象類定義為接口。
()17、Java程序里,創(chuàng)建新的類對象用關(guān)鍵字new,回收無用的類對象使用關(guān)鍵字free。
()18、當(dāng)一個方法在運行過程中產(chǎn)生一個異常,則這個方法會終止,但是整個程序不一定終止運行。
()××××
×√
19、如果f是父類Flower的引用變量,而r是子類Rose的對象,則語句f=r是正確的。
()
√20、子類可以定義與父類同名的方法,稱為方法的覆蓋,方法覆蓋要求子類的方法與父類的方法名字和參數(shù)都相同,但返回值類型可以不同。
()×√×21、Java中的默認(rèn)訪問權(quán)限是友好的,其訪問權(quán)限受包的影響()22、接口和類一樣也可以有繼承關(guān)系,而且都只能支持單繼承()23、所有類至少有一個構(gòu)造器,構(gòu)造器用來初始化類的新對象,構(gòu)造器與類同名,返回類型只能為void
()24、包是按照目錄、子目錄存放的,可以在程序中用package定義包,若沒有package一行,則表示該文件中的類不屬于任何一個包。
()25、在異常處理中,若try中的代碼可能產(chǎn)生多種異常,則可以對應(yīng)多個catch語句,若catch中的參數(shù)類型有父類子類關(guān)系,此時應(yīng)該將父類放在前面,子類放在后面。
()26、在實例方法或構(gòu)造器中,this用來引用當(dāng)前對象,通過使用this可引用當(dāng)前對象的任何成員。()
27、方法的重載是指同一類中定義名稱相同的多個方法,他們的返回值類型不同或參數(shù)類型或參數(shù)的次序不同。
()×××
√×三、寫出下面程序的結(jié)果(共6題)1、publicclassTest{publicstaticvoidmain(Stringargs[]){Strings1=newString("123");Strings2=newString("123");Strings3="123",s4="123";System.out.println((s1==s2)+","+(s1.equals(s2))+","+(s3==s4)+","+(s3.equals(s4)));}}______
________________false,true,true,true2、classTest{doubleD;publicdoublegetD(doubleD){D++;returnthis.D;}publicstaticvoidmain(Stringargs[]){System.out.println(newTest().getD(1));}}________________0.0三、寫出下面程序的結(jié)果(共6題)3、
classTest{staticintX;intY;staticintMultiply(intZ){intA;A=X*Y*Z;returnA;}publicstaticvoidmain(Stringargs[]){System.out.println(Multiply(3));}}________________編譯出現(xiàn)錯誤4、classputDataextendsThread{publicvoidrun(){for(inti=1;i<=5;i++)System.out.print(i+"");}}classTest{publicstaticvoidmain(Stringargs[])throwsInterruptedException{Threadth=newputData();th.start();System.out.println("程序結(jié)束啦!");}}程序結(jié)束啦!123455、
classSuperClass{privateinta=10;protectedintb=20;voidf(){System.out.print(a*b);}voidg(){System.out.print("SuperClassFunctionghasbeencalled!");}}publicclassTestextendsSuperClass{intc=5;publicvoidf(){System.out.println(b/c);}publicvoidtestfun(){System.out.println("sonfunctiontestfunhasbeencalled!");}publicstaticvoidmain(Stringargs[]){SuperClasssc=newSuperClass();sc.f();sc.g();sc=newTest();((Test)sc).testfun(); }}200SuperClassFunctionghasbeencalled!sonfunctiontestfunhasbeencalled!
6、
classA{protectedintx;inty;A(){x=0;y=0;System.out.println("AobjectofTypeAbasbeencreated!");}A(int_x,int_y){x=_x;y=_y;System.out.println("constructorofAwithargumentsbasbeencreated!"); }intaddxy(){returnx+y;} }classsubAextendsA{subA(){super();}
subA(int_x,int_y){super(_x,_y);} protectedintaddxy(){returnx+y+100;} }publicclassOverload{publicstaticvoidmain(String[]args){subAobj=newsubA();System.out.println("obj.addxy()="+obj.addxy());obj=newsubA(10,70);System.out.println("obj.addxy()="+obj.addxy());}}
AobjectofTypeAbasbeencreated!obj.addxy()=100constructorofAwithargumentsbasbeencreated!obj.addxy()=180四.編程題(共5題)1.計算從你上大學(xué)報到那一天(如2009年8月30號)到今天的相隔天數(shù)。importjava.util.*;classT{publicstaticvoidmain(Strirng[]args){Calendarcalendar=Calendar.getInstance();calendar.set(2009,8,30);longtime2009830=calendar.getTimeInMillis();calendar.set(2012,12,21);longtime20121221=calendar.getTimeInMillis();long相隔天數(shù)=(time20121221-time2009830)/(1000*60*60*24);System.out.println("2012年12月21日和2009年8月30日相隔"+相隔天數(shù)+"天");}}四.編程題(共5題)2.設(shè)計一個類T,求文本文件intfile1.txt中各行整數(shù)的和,并把和存入到另一個文件In.txt中。設(shè)文件In.txt中全是整數(shù),整數(shù)序列被分成行,各行整數(shù)個數(shù)不等且用空格分隔。要求程序?qū)⑽募懈餍姓麛?shù)的和輸出在另一個文件Result中。In.txt文件中數(shù)據(jù)如下:各行的和寫入到Result文件中: 1534563 108 112168280 2132345588491importjava.io.*;importjava.util.*;publicclassCalresult{publicstaticvoidmain(Stringargs[]){Scannersc=null;try{sc=newScanner(newFile("In.txt"));FileWriterout=newFileWriter("Result.txt");while(sc.hasNextLine()){Strings=sc.nextLine();StringTokenizertoken=newStringTokenizer(s);longsum=0;while(token.hasMoreTokens()){sum+=Integer.parseInt(token.nextToken());}System.out.println(sum);out.write(""+sum);}out.close();}catch(FileNotFoundExceptione){System.out.println("文件找不到!"+e);}catch(IOExceptione){System.out.println("文件讀寫錯!"+e);}}}四.編程題(共5題)3、編寫一個類T,完成如下功能:(1)定義三個大整數(shù)IX、IY、IZ,求三個大整數(shù)中的最小數(shù);(2)類中設(shè)計一個方法Fac(BigIntegerN),求N的階乘。importjava.math.*;classThreadTest{publicstaticvoidmain(String[]args){BigIntegerIX=newBigInteger("10"),IY=newBigInteger("5898598"),IZ=newBigInteger("688668");System.out.println("IX的階乘"+fac(IX).toString());if(IX.compareTo(IY)<0&&IX.compareTo(IZ)<0)System.out.println("min="+IX.toString());if(IY.compareTo(IX)<0&&IY.compareTo(IZ)<0)System.out.println("min="+IY.toString());if(IZ.compareTo(IY)<0&&IZ.compareTo(IX)<0)System.out.println("min="+IZ.toString());}publicstaticBigIntegerfac(BigIntegerx){BigIntegerone=newBigInteger("1"),f=newBigInteger("1");for(BigIntegeri=one;pareTo(x)<0;i=i.add(one)){f=f.multiply(i);}returnf;}}四.編程題(共5題)4.有集合A={1,3,5,8}和B={1,3,7,9,},編寫一個程序求(A∪B)-(A∩B)。
importjava.util.*;publicclassExample{publicstaticvoidmain(Stringargs[]){Integerone=newInteger(1),two=newInteger(2),three=newInteger(3),four=newInteger(4),seven=newInteger(7),nine=newInteger(9); HashSet<Integer>A=newHashSet<Integer>(), B=newHashSet<Integer>(),tempSet=newHashSet<Integer>(); A.add(one);A.add(two);A.add(three);A.add(four); B.add(one);B.add(three);B.add(seven);B.add(nine); tempSet=(HashSet<Integer>)A.clone(); A.addAll(B);//A∪B并集-->AB.retainAll(tempSet);//(A∩B)—》B的交集A.addAll(B);//(A∪B)-(A∩B)-->Aintnumber=B.size();System.out.println("A和B的(A∪B)-(A∩B)集合中有"+number+"個元素");//Iterator<Integer>iter=B.iterator();while(iter.hasNext()){Integert=iter.next();System.out.print(Value()+"");}}}四.編程題(共5題)5.編寫一個類T,類中有一個方法LongerString,要求在一個字符串?dāng)?shù)組中找出長度最長的一個元素。其中字符串?dāng)?shù)組是方法的參數(shù),最長的一個元素是方法的返回值。publicclassT{staticStringLongerString(String[]S){StringmaxStr=S[0];for(inti=1;i<S.length;i++)if(maxStr.length()<S[i].length())maxStr=S[i];returnmaxStr;}publicstaticvoidmain(String[]args){Stringb[]={"asdf","saffdfd","as"};System.out.println(shortString(b));}}
五、簡答題
1、什么是正則表達式?寫出與模式“X[168]{2}”匹配的4個字符串。
是指一個用來描述或者匹配一系列符合某個句法規(guī)則的字符串的單個字符串。其用途是在文本編輯器或其他工具里,用來檢索和/或替換那些符合某個模式的文本內(nèi)容。A11,A16,A18,A61,A66,A68,A81,A86,A88均算正確。2、String和StringBuffer的區(qū)別?
String類創(chuàng)建的字符串對象是不可修改的,也就是說,String字符串不能修改、刪除或替換字符串中的某個字符,即String對象一旦創(chuàng)建,其中的字符串是不可以再改變的。StringBuffer類能創(chuàng)建可修改的字符串序列,也就是說,該類的對象的實體的內(nèi)存空
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 喉感覺麻痹的健康宣教
- 電力系統(tǒng)分析課件孟祥萍
- 黑素細胞痣的臨床護理
- 小兒蕁麻疹的臨床護理
- 先天性耳廓畸形的健康宣教
- 哺乳期乳頭皸裂的健康宣教
- 《單片機原理及應(yīng)用 》課件-第4章
- 《第一章》課件-第五章技術(shù)體驗 - 智能交互
- 皮膚良性腫瘤的臨床護理
- 隆突性皮膚纖維肉瘤的臨床護理
- O型密封圈壓縮量計算
- 云南省昆明市盤龍區(qū)2023-2024學(xué)年部編版九年級歷史上學(xué)期期末質(zhì)量監(jiān)測試題(含答案)
- 公交公司點鈔管理制度
- 華師大版七年級上冊數(shù)學(xué)期末考試試卷含答案
- 呆滯料與超期物料處理流程
- 2019年4月自考00015英語二真題及答案含解析
- 重癥患者中心靜脈導(dǎo)管管理專家共識解讀
- 長輸管道犧牲陽極法陰極保護施工方案
- 保函(履約、投標(biāo)、付款、質(zhì)量等保函參考格式)
- 北京東城區(qū)北京匯文中學(xué)2023-2024學(xué)年高二物理第一學(xué)期期末復(fù)習(xí)檢測模擬試題含解析
- 《流程分析與改善》課件
評論
0/150
提交評論