JAVA期末考試復(fù)習(xí)題_第1頁
JAVA期末考試復(fù)習(xí)題_第2頁
JAVA期末考試復(fù)習(xí)題_第3頁
已閱讀5頁,還剩48頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、?JAVA程序設(shè)計?練習(xí)題、單項選擇擇題1、編譯Java Application源程序文件將產(chǎn)生相應(yīng)的字節(jié)碼文件,這些字節(jié)碼文件的擴展名為B A. javaB. .classC. htmlD. .exe2、設(shè)x = 1 , y = 2 ,z = 3,那么表達式y(tǒng) += z /+ + x 的值是A oA.3B.3.5C.D.453、不允許作為類與類成員的訪問控制符的是C A.B.publicprivateC.staticD.protected4、 為AB類的一個無形式參數(shù)無返回值的方法method書寫方法頭,使得使用類名AB作為前綴就可以調(diào)用它,該方法頭的形式為(A)。A. static voi

2、dmethod( )B.public void method()C. final voidmethod( )D.abstract void method()5、 關(guān)于選擇結(jié)構(gòu)以下哪個說確?( B )A. if語句和else語句必須成對出現(xiàn)B. if語句可以沒有else語句對應(yīng)C. switch結(jié)構(gòu)中每個case語句中必須用 break語句D. switch結(jié)構(gòu)中必須有default 語句6、 while循環(huán)和dowhile 循環(huán)的區(qū)別是:(D)A. 沒有區(qū)別,這兩個結(jié)構(gòu)任何情況下效果一樣B. while循環(huán)比dowhile 循環(huán)執(zhí)行效率高C. while循環(huán)是先循環(huán)后判斷,所以循環(huán)體至少被執(zhí)行

3、一次D. dowhile循環(huán)是先循環(huán)后判斷,所以循環(huán)體至少被執(zhí)行一次7、關(guān)于for循環(huán)和while 循環(huán)的說法哪個正確?(B)A. while循環(huán)先判斷后執(zhí)行,for循環(huán)先執(zhí)行后判斷。B. while循環(huán)判斷條件一般是程序結(jié)果,for循環(huán)的判斷條件一般是非程序結(jié)果C. 兩種循環(huán)任何時候都不可以替換D.兩種循環(huán)結(jié)構(gòu)中都必須有循環(huán)體,循環(huán)體不能為空&以下修飾符中與訪問控制無關(guān)的是DA. privateB . publicC. protectedD . final9、void 的含義:A A. 方法沒有返回值B. 方法體為空C. 沒有意義D. 定義方法時必須使用10、 return 語句:C

4、A. 只能讓方法返回數(shù)值B .方法都必須含有C.方法中可以有多句returnD .不能用來返回對象11、關(guān)于對象成員占用存的說法哪個正確? B A. 同一個類的對象共用同一段存B. 同一個類的對象使用不同的存段,但靜態(tài)成員共享一樣的存空間C. 對象的方法不占用存D. 以上都不對12、以下說法哪個正確? CA. 不需要定義類,就能創(chuàng)立對象B. 對象中必須有屬性和方法C. 屬性可以是簡單變量,也可以是一個對象D、屬性必須是簡單變量13、以下說法哪個正確?( A)A、一個程序可以包含多個源文件B、一個源文件中只能有一個類C、一個源文件中可以有多個公共類D、一個源文件只能供一個程序使用14、關(guān)于方法

5、main的說法哪個正確?( C)A. 方法main只能放在公共類中B main()的頭定義可以根據(jù)情況任意更改C. 一個類中可以沒有main()方法D. 所有對象的創(chuàng)立都必須放在main()方法中15、構(gòu)造函數(shù)何時被調(diào)用? A A、創(chuàng)立對象時B、類定義時C、使用對象的方法時D、使用對象的屬性時16、抽象方法: C A、可以有方法體B、可以出現(xiàn)在非抽象類中C、是沒有方法體的方法D、抽象類中的方法都是抽象方法17、關(guān)于繼承的說確的是:BA、子類將繼承父類所有的屬性和方法。B、子類將繼承父類的非私有屬性和方法。C、 子類只繼承父類 public方法和屬性D、子類只繼承父類的方法,而不繼承屬性18、

6、關(guān)于構(gòu)造函數(shù)的說法哪個正確?( C )A、一個類只能有一個構(gòu)造函數(shù)B、一個類可以有多個不同名的構(gòu)造函數(shù)C、構(gòu)造函數(shù)與類同名D、構(gòu)造函數(shù)必須自己定義,不能使用父類的構(gòu)造函數(shù)C19、this 和 super : ( C )A、都可以用在main()方法中B、都是指一個存地址C、不能用在main()方法中D、意義一樣20、關(guān)于super的說確的是:A、是指當前對象的存地址B、是指當前對象的父類對象的存地址C、是指當前對象的父類D、可以用在main方法中21、覆蓋與重載的關(guān)系是A A. 覆蓋只有發(fā)生在父類與子類之間,而重載可以發(fā)生在同 一個類中B. 覆蓋方法可以不同名,而重載方法必須同名C. fina

7、l修飾的方法可以被覆蓋,但不能被重載D. 覆蓋與重載是同一回事22、關(guān)于接口哪個正確? AA、實現(xiàn)一個接口必須實現(xiàn)接口的所有方法B. 個類只能實現(xiàn)一個接口C. 接口間不能有繼承關(guān)系D. 接口和抽象類是同一回事23、 異常包含以下哪些容?( A)A. 程序執(zhí)行過程中遇到的事先沒有預(yù)料到的情況B. 程序中的語法錯誤C. 程序的編譯錯誤D. 以上都是24、對于已經(jīng)被定義過可能拋出異常的語句,在編程時:( A )A. 必須使用try / catch語句處理異常,或用throws將其拋出B. 如果程序錯誤,必須使用try /catch語句處理異常C. 可以置之不理D. 只能使用try / catch語句

8、處理25、當某一線程正處于休眠狀態(tài),而另一個線程用Thread類中的interrupt。方法中斷它時,拋出的異常類型是( C )。B)A) lOExceptionRuntimeExceptionC)lnterruptedExceptionD)ClassNotFoundException26、下面的程序段的功能是(D )File file仁new File("d:xxxyyyzzz");file1.mkdirs();A)在當前目錄下生成子目錄:xxxyyyzzzB)生成目錄: e:xxxyyyzzzC)在當前目錄下生成文件xxx.yyy.zzzD)以上說法都不對27、應(yīng)用程序

9、的 main方法中有以下語句,那么輸出的結(jié)果 是(B) oString s =xxxxxxxxxxxxxxx#123#456#zzzzz;int n = s.indexOf(#);int k = s.indexOf("#", n+1);String s2 = s.substring(n+1,k);System.out.println(s2);A) 123456B)123C)xxxxxxxxxxxxxxxD) zzzzz28、關(guān)于下面的程序 Test.java說確的是D public class Test Stringx="1"int y;Publicst

10、atic void main(String args)lntz=2;System.out.println(x+y+z);A)3B)102C)12D程序有編譯錯誤29、應(yīng)用程序的main方法中有以下語句,那么輸出的結(jié)果int b=1, 1, 1,2,2, 3;int sum=O;for(int i=0; i<bength; i+)j+)for(int j=0; jvbi.length;sum+=bij;System.out.println("sum="+sum);A) 10B)6C) 9D) 1330、應(yīng)用程序的 main方法中有以下語句,那么執(zhí)行后輸出 的結(jié)果是(B)

11、。int x = 125,21,5,168,98;int min = x0;for (int i=1; i<xength; i+)min = xi;System.out.println(min);D)A) 125B) 5C) 9816831、應(yīng)用程序的 main方法中有以下語句,那么輸出的結(jié)果 是(D)。Hashtable hashtable=new Hashtable();hashtable.put("100","aaa");hashtable.put("200","bbb");hashtable.put(

12、"300","ccc");System.out.println(hashtable.get("300").toString()+hashtable.get("200").toString()+hashtable.get("100").toString();A)aaa B) bbbC) ccc D) cccbbbaaa32、以下關(guān)于java異常說法不正確的選項是 D 。AThrowable 類是 Java 語言中 Error 類和 Exception 類 的父類。B當異常對象是Exception類

13、或其子類的實例時,能通過Java虛擬機或者throw 語句拋出該異常對象,并能通過try -catch finally處理。C如果只用一個catch塊捕捉多個異常對象,那么catch子 句中的參數(shù)類型應(yīng)是所有異常對象的父類。D以上說法都不對。33、以下程序段執(zhí)行后的結(jié)果是(A) oString s = new String("abcdefg");for (int i=0; i<s.length(); i+=2)System.out.print(s.charAt(i);A) aceg B) ACEGC) abcdefgD)abcd34、有整型數(shù)組:intx=12,35,

14、8,7,2;, 那么調(diào)用方法 Arrays.sort(x)后,數(shù)組x中的元素值依次是( A )A)2781235B)1235872C)3512872D)8712352String s仁 new String("abc");String s2=new String("abc");boolean b1=s1.equals(s2);booleanb2=(s1=s2);System.out.print(b1+""+b2);A)truefalseB)falsetrueC)truetrueD)falsefalse36、應(yīng)用程序的 main方法中有

15、以下語句,那么輸出的結(jié)果 是( B ) oHashtable hashtable=newHashtable();hashtable.put("x","12345");hashtable.put("y","67890");hashtable.put("a","abcde");System.out.println(hashta ble.get("a");A)a B) abcdeC) 12345 D)6789037、應(yīng)用程序的 main方法中有以下語句,那么輸出

16、的結(jié)果是B)°Strings="12345#aaa#bbb#67890"intn=s.indexOf("#");int k=s.indexOf("#",n+1);intm=s.indexOf("#",k+1);Strings2=s.substring(m+1);System.out.println(s2);D)A) 123456B) 67890C) aaa bbb38、下面程序段執(zhí)行后 b的值是BIntegerinteg =new Integer(9)boolean b = integinstanceof

17、 Object;A) 9B) trueC) 1D) false39、應(yīng)用程序Test.java的源程序如下,在命令行鍵入:javaTest aaa bb c回車后輸出的結(jié)果是(A ) opublic class Test publicstatic void main(String args) intk仁argsength;intk2=args1.length();System.out.print(k1+""+k2)A) 3233B)12C) 13D)40、應(yīng)用程序的是(A222;main方法中有以下語句,那么輸出的結(jié)果)°int b=1, 2,2,int sum=

18、0;for(int i=0;i<bength;i+)for(i nt j=O;j<bi.le ngth;j+)sum*=bij;System.out.println("sum="+sum);A) 32B)11C) 2D)341、應(yīng)用程序的main方法中有以下語句,那么執(zhí)行后輸出 的結(jié)果是D。intx=125,21,5,168,98;int max=x0;for(int i=1;i<xength;i+)max =xi;System.out.println(max);D)A)125B) 5C) 9816842、程序Test.java編譯運行后輸出的結(jié)果是pub

19、lic class Test Strings仁"java"publicstatic void main(String args)intz=2;Testt=newTest();System.out.println(t.s1+z);A) java2B)2C)沒有輸出結(jié)果D)java43、應(yīng)用程序的 main方法中有以下語句,那么輸出的結(jié)果 是(A) oString s仁"0.5", s2="12"double x=Double.parseDouble(s1);inty=lnteger.parselnt(s2);System.out.pri

20、ntln(x+y);A) 12.5B) 120.5C)12D)12.544、如下哪個是Java中的標識符A publicsuperB、C、3numberD、width45、如下哪個是Java中的標識符A、fieldnameB、super3numberD、#numberF面哪個語句不是合46、如下定義:String s = "story"法的AA、 s += "books"B、s = s + 100;C、int lensength;D、String t = s +abc ;47、如下哪個是Java中有效的關(guān)鍵字C A、nameB、helloC、falseD

21、、good48、下面的代碼段執(zhí)行之后 count的值是什么 D int count = 1;for (int i =1; i <= 5; i+) count += i;System. out .println(count);15C、D、 1649、定義一個類,必須使用的關(guān)鍵字是BA public class interfaceB、C、D、static50、定義一個接口必須使用的關(guān)鍵字是CA public class interfaceB、C、D、static51、如果容器組件p的布局是BorderLayout ,那么在p的下邊中添加一個按鈕 b,應(yīng)該使用的語句是 C p.add(b);B

22、、p.add(b,"North");C、p.add(b,"South");D、b.add(p,"North");52、聲明并創(chuàng)立一個按鈕對象b,應(yīng)該使用的語句是(A )A、Button b=newButton();B、buttonb=new button();C Button b=newb();D、b.setLabel(“確定);53、Frame對象默認的布局管理器是 BFlowLayoutBorderLayoutCCardLayoutnull二、填空題1、 開發(fā)與運行Java程序需要經(jīng)過的三個主要步驟為編輯源程序、編譯生成字節(jié)碼和解

23、釋運行字節(jié)碼。2、 在Java的根本數(shù)據(jù)類型中,char型采用Unicode編碼方案,每個 Unicode 碼占用 2字節(jié)存空間,這樣,無論是中文字符還是英文字符,都是占用2字節(jié)存空間。3、 設(shè)x = 2,那么表達式x + + /3的值是 1 。4、假設(shè)x = 5 , y = 10,那么x < y和x >= y的邏輯值分另廿為true和 false 。5、 扌由象 方法是一種僅有方法頭,沒有具體方法體和操作實現(xiàn)的方法,該方法必須在抽象類之中定 義。final方法是不能被當前類的子類重新定義的方法。6、創(chuàng)立一個名為 MyPackage的包的語句是 packagemypackage,該

24、語句應(yīng)該放在程序的位置為:應(yīng)放在程序第一句。7、 設(shè)有數(shù)組定義:int MyIntArray = 10,20,30,40,50 ,60,70;那么執(zhí)行以下幾個語句后的輸出結(jié)果是120。int s = 0 ;for (int i = 0 ; i < MylntArray.length ;i + + )if ( i % 2 = = 1 )s += MylntArrayi;System.out.println(s);&在Java程序中,通過類的定義只能實現(xiàn)重繼承,但通過接口的定義可以實現(xiàn)多重繼承關(guān)系。1、如果將類MyClass聲明為public,它的文件名稱必須是_MyClass.ja

25、va才能正常編譯。2、 Java 程序中的單行注釋符是/,多行注釋符是/*.*/。3、Java中布爾類型的常量有兩種,它們是 _true和 false。4、Java中用于定義小數(shù)的關(guān)鍵字有兩個: float和 double后者精度高于前者。5、Java中用于兩個數(shù)相等比較的運算符是:=,用于不相等比較的運算符是 <>。6、在Java中定義一個字符串類型的變量str的語句是:String str,定義一個具有 10個元素的整型數(shù)組 a 的語句是:int 1 r=new int10。7、導(dǎo)入 mypackage包中的所類的命令是 importmypackage.* ;&當聲明一

26、個數(shù)組int arr = new int5;時,這代表這個數(shù)組所保存的變量類型是int,數(shù)組名是 arr,數(shù)組的大小為_5,數(shù)組元素下標的使用圍是0到4。9、假設(shè)x=13, y=4,那么表達式x%y != 0的值是 true,其數(shù)據(jù)類型是 boolean。10、異常處理是由_try、catch和 finally塊三個關(guān)鍵所組成的程序塊。11、以下程序段的輸出結(jié)果是 三角形int x = 5, y = 6, z = 4;if(x + y > z && x + z > y && z + y > x)");(三角形else角形")

27、;(不是三12、下面程序段的執(zhí)行結(jié)果是6 5 4 32int a = 2, 3, 4, 5, 6 ;for(int i = a.I ength - 1; i >= 0; i-)System.out.print(ai +二、簡答題1、簡述Java中異常處理的機制?答:首先Java的異常是面向?qū)ο蟮摹?一個Java的Exception 是一個描述異常情況的對象.當出現(xiàn)異常情況時,一個 Exception對象就產(chǎn)生了,并放到異常的成員函數(shù)里。Java的異常處理是通過5個關(guān)鍵詞來實現(xiàn)的:try,catch,throw,throws 和 finally 。1. 異常處理:在Java語言的錯誤處理結(jié)

28、構(gòu)由try , catch ,finally 三個塊組成。其中try塊存放將可能發(fā)生異常的 Java語言,并管理相關(guān)的異常指針; catch塊緊跟在try塊 后面,用來激發(fā)被捕獲的異常;finally塊包含去除程序沒有釋放的資源,句柄等。不管try塊中的代碼如何退出,都將執(zhí)行finally 塊。2. 拋出異常:Java語言可以不在方法中直接捕獲,而用 throw語句將異常拋給上層的調(diào)用者。Throw語句就是來明確地拋出一個異常;首先你必需得到一個Throwable的實例句柄,通過參數(shù)傳到 catch中,或者采用new操作符來創(chuàng)立 一個。2、什么是繼承?答:通過必要的說明能夠?qū)崿F(xiàn)某個類無需重新定

29、義就擁有另 一個類的某些屬性和方法,并把這種關(guān)系稱為繼承,先定義 的類稱為父類,后定義的類稱為子類,并且允許多層的繼承 關(guān)系。3、請簡述重載和重寫的區(qū)別?答:方法的重寫 Overriding 和重載 Overloading 是Java多 態(tài)性的不同表現(xiàn)。重寫Overriding 是父類與子類之間多態(tài)性的一種表現(xiàn), 重載Overloading是一個類中多態(tài)性的一種表現(xiàn)。如果在子類中定義某方法與其父類有一樣的名稱和參 數(shù),我們說該方法被重寫(Overriding)。子類的對象使用這個方法時,將調(diào)用子類中的定義,對它而言,父類中的定 義如同被“屏蔽了。如果在一個類中定義了多個同名的方法,它們或有不同

30、 的參數(shù)個數(shù)或有不同的參數(shù)類型,那么稱為方法的重載 (Overloading) 。Overloaded的方法是可以改變返回值的類 型。四、寫出下面程序的運行結(jié)果1、 import java.io.*;public class abcpublic static void main(String args )AB s = new AB("Hello!","llove JAVA.");class AB String s1;Strings2;public AB(String strl, String str2)s1 = str1;s2 = str2;public

31、 String toString()return s1+s2;運行結(jié)果:Hello!l loveJAVA2、 import java.io.* ;public class abcpublic static void main(Stringargs)int i, s = 0 ;int a = 10 , 20 , 30 ,40 ,50,60,70,80,90 ;for ( i = 0 ; i < aength ;i +)if ( ai%3=0 ) s += ai;"+S);運行結(jié)果:S=1803、import java.io.* ;public class abcpublic st

32、atic void main(String args)System.out.println("a="+a+"nb="+b);class SubClass extends SuperClass int c;SubClass(int aa, int bb, int cc)super(aa, bb);c=cc;class SubSubClass extends SubClass int a;SubSubClass(int aa, int bb, int cc) super(aa, bb, cc);A = aa+bb+cc;void show()System.o

33、ut.println("a="+a+"nb="+b+"nc="+c);運行結(jié)果:a=60 b=20c=304、以下程序的輸出結(jié)果為 _Peter is17years old !。public class Person Stringname;intage;publicPerson(String name, int age) = name; this.age = age;Person c = newPerson("Peter",17);System.out.println( +"

34、;is" + c.age + " years old!");5、以下程序的輸出結(jié)果為 課程號:101課程名:ASP學(xué)分:3。public class Course privateString eNumber;privateString cName;privateint cUnit;publicCourse(String number, String name,int unit) cName = name;eUnit = unit;publicvoid printCourselnfo() ( 課程號:"+ cNumber + "課程名:"+ cName+ "學(xué)分:"+ cUnit);class CourseTest publicstatic void main(String args) Course c;c = new Course("101","ASP",3);6、以下程序的輸出結(jié)果為 _湯姆貓體重:20.0斤。public class Tom privatefloat weight;privatestatic String name;publicvoid setWeight(float weight) this.weight = wei

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論