版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、Java期末復習題一、選擇題:1、所謂數(shù)據封裝就是將一組數(shù)據和與這組數(shù)據有關操作組裝在一起,形成一個實體,這實體也就是 (B) A. 類 B. 對象 C. 函數(shù)體 D. 數(shù)據塊 2、定義一個不能被繼承的名為Abc的類的正確方法是(E)Aclass Abc
2、 Bnative class Abc Cabstract final class Abc Dclass Abcfinal; Efinal class Abc3、若要生成ClassA類的一個對象a,以下書寫正確的是(A) A.ClassA a=new ClassA();B.ClassA a=new Class(); C.a=new ClassA();D.ClassA a=ClassA();4、 類的構造函數(shù)被自動調用執(zhí)行的情況是在定義該類的 (c) A. 成員函數(shù)時 B. 數(shù)據成員時 C. 對
3、象時 D. 構造函數(shù)時5、編譯運行下面程序時有何種結果?請選擇一個正確的答案(A)class Test public static void main() System.out.println("hello"); A程序不能編譯,因為main()方法定義不正確。B程序能編譯,但不能運行,因為class未聲明為public的。C程序能無錯地編譯并運行,但運行時將產生異常。D程序運行時顯示“hello”。6、關于抽象方法的說法正確的一項是(A)A、可以有方法體B、可以出現(xiàn)在非抽象類中C、抽象方法是沒有方法體的方法D、抽象類中的
4、方法都是抽象方法7、 假定AB為一個類,則執(zhí)行AB x=new AB( );語句時將自動調用該類的(B) A有形參構造函數(shù) B無形參構造函數(shù) C其他成員函數(shù) D重載函數(shù) 8、編譯并運行如下程序后,結果是什么?請在給出的選項中選擇出正確的答案(E)class Array public static void main(String args) int length=100; int d=new intlength; for(int index=0;index<length;index+)
5、 System.out.println(dindex); A因為int數(shù)組聲明不正確,程序不能被編譯。B程序被編譯,但在運行時將拋出一個ArrayIndexOutOfBoundsException異常。C程序將顯示數(shù)字0到99,然后將拋出一個ArrayIndexOutOfBoundsException異常。D程序被編譯,但println()方法將拋出一個NoSuchMethodException異常。E程序正常運行,并顯示100個0。9、下列關于接口的說法正確的是哪一項(D) A.接口與抽象類是相通的概念 B.實現(xiàn)一個接口必須實現(xiàn) 接口的所有方法C.接口之間不能有繼承關系D.一個類可實現(xiàn)多個接
6、口10、 實現(xiàn)運行時的多態(tài)性用(A) A重載方法 B構造方法 C非重載方法 D抽象方法11、哪一種布局管理器是從上到下、從左到右安排組件,當移動到下一行時是居中的(B)ABorderLayout BFlowLayout CGridLayoutDCardLayout EGridBagLayout12、下列對繼承的說法正確的一項是(B) A.子類能繼承父
7、類的所有方法和狀態(tài) B.子類能繼承父類的非私有方法和狀態(tài) C.子類只能繼承父類的public方法和狀態(tài) D.子類只能繼承父類的方法,而不能繼承狀態(tài)13、 Java語言中,如果你有下面的類定義:abstract class Shape abstract void draw(); class Square extends Shape 如果你試圖編譯上面的代碼會發(fā)生(B)。A 一切成功編譯 B Shape可以編譯Square不能編譯 C Square可以編譯Shape不能編譯
8、D Shape、Square都不能編譯14、下面代碼是做什么的(E)JTextField tf=new JTextField(30);A代碼不合法。在JTextField中,沒有這樣的構造方法B創(chuàng)建了一個30行的JTextField對象,但沒進行初始化,它是空的。C創(chuàng)建了一個30列的JTextField對象,但沒進行初始化,它是空的。D創(chuàng)建一個有30行文本的JTextField對象。E創(chuàng)建一個有30列文本的JTextField對象。15、構造方法何時被調用(B)A、類定義時 B、創(chuàng)建對象C、調用方法時 D、使用對象的變量時16、 int my_Array; my_Array=ne
9、w int5; for(int count=0;count <=5;count+)System.out.println(my_Arraycount); 以上Java代碼運行的結果是(d)。A 將1,2,3,4,5輸出到屏幕 B 將0,1,2,3,4輸出到屏幕C將0,1,2,3,4,5輸出到屏幕 D將出現(xiàn)運行時異常17、給出如下代碼:class Testprivate int m;public static void fun() / some code.如何使成員變量m 被函數(shù)fun()直接訪問?(C)A、將private int m 改為protected i
10、nt m B、將private int m 改為 public int mC、將private int m 改為 static int m D、將private int m 改為 int m18、下面對形參的說法中哪一項是正確的(C)A必須有兩個B至少有一個C可以沒有D至少有兩個19、在JAVA編程中,Java編譯器會將java程序轉換為(A)。A 字節(jié)碼 B可執(zhí)行代碼 C機器代碼 D以上所有選項都不正確20、下面的表達式中正確的是( b ) A.String s=你好;in
11、t i=3;s+=i; B.String s=你好;int i=3;if(i=s)s+=i; C.String s=你好;int i=3;s-=i; D.String s=你好;int i=3;s=i+;21、下列說法中正確的一項是(D)A不需要定義類就能創(chuàng)建對象 B對象中必須有簡單變量C屬性必須是簡單變量D屬性可以是簡單變量,也可以是一個對象22、在JAVA編程中,以下(B)命令用來執(zhí)行java類文件。A Javac Bjava Cappletviewer D以上所有選項都
12、不正確23、下列語句片段 int a=10,b=4,c=20,d=6; System.out.println(a+*b+c*-d); 的結果為(C) A.144 B.28 C.140 D.不能執(zhí)行24、下列說法哪一個是正確的(A)A類是變量和方法的集合體B數(shù)組是無序數(shù)據的集合C抽象類可以實例化D類成員數(shù)據必須是共有的25、 JAVA中,使用(C)修飾符時,一個類能被同一包或不同包中的其他類訪問。A private Bprotected Cpublic
13、160; Dfinal26、下面哪個修飾符修飾的方法只能被本類中的其他方法使用(C)A、protectedB、staticC、privateD、public27、關于對象成員占用內存的說法哪一項是正確(B)A同一個類的對象公用一段內存B同一個類的對象使用不同的內存段,但靜態(tài)成員共享相同的內存空間C對象的方法不占用內存D以上說法都不對28、 JAVA中,類Worker是類Person的子類,Worker的構造方法中有一句“super()”,該語句(C)。 A調用類Worker中定義的super( )方法 B 調用
14、類Person中定義的super( )方法 C 調用類Person的構造函數(shù) D 語法錯誤29、當方法遇到異常又不知如何處理時,下列哪種說法是正確的(B) A.捕獲異常B.拋出異常 C.聲明異常D.嵌套異常30、執(zhí)行下面的賦值語句后,a的值為(B)A=Float.valueOf(“12.34”).floatValue();Aa=”12.34” Ba=12.34 Ca=1234 Da=1231、JAVA語言中,下面關于類的描述正確的是(B)。 A一個子類可以有多個父類 B 一個父類可以有多個子類 C子類可以使用父類的所有 D 子類一定比父類有更多的成員方法32、下列符號中不能作為J
15、ava標識符的是(C)A條件 Bxyz C45six D33、下列關于一個二維的整型數(shù)組的定義,不正確的是(A)Aint a1010=new int;Binta=new int1010;Cinta=new int1010;Dint a=new int1010;34、JAVA是一種完全面向(B)的語言。 A 過程 B對象 C組件 D服務 35、下列哪些不是Jav
16、a的關鍵字(B)Aextends Bopen Cclass Dif Eimport36、定義一個表示20個值為null的字符串數(shù)組,下面選項正確的是(D)。A、String a; B、String a;C、char a20; D、String a=new String20;37、JAVA中,實現(xiàn)繼承的關鍵字是(C)。 A Public Bclass Cextends Dimplements 38、在J
17、ava語言中,整型常數(shù)123占用的存儲字節(jié)數(shù)是(C)A1 B2 C4 D839、設x=1、y=2和z=3,者表達式y(tǒng)+=z-/+x的值是(b)A3 B3.5 C4 D4.540、 application中的主類需包含main方法,main方法的返回類型是(D)。 Aint Bfloat Cdouble Dvoid41、在Java語言中,'u0041'在內存中占用的字節(jié)數(shù)是(D)A2 B4 C6 D842、應用程序中的main()方法返回的類型是(A)Avoid BString Cchar Dint 43、下程序片段,不能插入到第1行的是(b)。 1. 2.
18、60; class A 3. /do sth 4. Apublic class MainClass Bint x=1;Cclass ANotherClass Dimport java.util.*; 44、下面可作為pub
19、lic void aMethod( ).重載方法的是(C)。 Avoid aMethod( ). Bpublic int aMethod(). Cpublic void aMethod ( ). Dpublic int aMethod ( in
20、t m).45、下面哪個語句會產生編譯錯誤(C)A、float F=4096.0F; B、double D=4096.0; C、byte B=4096; D、char C=4096;46、假設A類有如下定義: class A int i; static String s; void method1() static void
21、60; method2() 設a是A類的一個實例,下列語句調用錯誤的是(C)。A.System.out.println(a.i); Ba.method1( ); CA.method1( ); DA.method2( ) 47、在Java語言中,實型常數(shù)45.67在內存中占用的字節(jié)數(shù)是(C)A1 B2 C4 D848、下列關于實型變量書寫正確的是(C)AE3 B2e0.3 C1.2e3 49、下列數(shù)據是常量(A)A、null B、name C、E D、ff5
22、0、選出所有不合法的表達式(D)A(true & true) B(4!=5 & 5=6) C(int myInt=0>3) Dfloat myFloat=40.0; 51、在Java語言中,'u0041'在內存中占用的字節(jié)數(shù)是(D)A15 B2 C4 D852、 不允許作為類及類成員的訪問控制符的是(B)。 A. public B. private C. static
23、; D. protected 53、設有代碼:Boolean b1=new Boolean(true);Boolean b2=new Boolean(true);下面表達式是返回true的合法表達式(B)Ab1=b2 Bb1.equals(b2) Cb1 & b2 Db1| b254、現(xiàn)有兩個類M、N,以下描述中表示N繼承自M的是(D)。A、class M extends N B、 class N implements MC、class M implements N D、 class N extends M55、下列哪個選項是合法標識符(A)A_book B5files
24、C+static D-3.1415926 56、下列與其它選項不等的是(D)A2 B0xF C015 D0XF57、 為AB類的一個無形式參數(shù)無返回值的方法method書寫方法頭,使得使用類名AB作為前綴就可以調用它,該方法頭的形式為(A)。A. static void method( ) B. public void method( ) C. final void
25、0; method( ) D. abstract void method( )58、下列類定義中哪些是合法的抽象類定義(d)Aclass Animalabstract void growl(); Babstract Animalabstract void growl(); Cclass abstract Animalabstract void growl(); Dabstract class Animal Abstract void growl
26、(); Eabstract class Animalabstract void growl()System.out.println(“growl”);59、下列選項不屬于Java保留字的是( A )Anull Bfalse Csizeof Dtrue60、 編譯Java Application 源程序文件將產生相應的字節(jié)碼文件,這些字節(jié)碼文件的擴展名為(B)。A. .java B. .class C. .html &
27、#160; D. .exe二、填空題:1、 一個Java的圖形用戶界面的最基本組成部分是組件。2、登錄Sun公司網站http:/.,能夠看到有關J2SE、J2EE和J2ME的信息。無論哪種Java運行平臺,都包含了相應的解釋器,解釋器負責將字節(jié)碼文件加載到內存,然后采用解釋方式執(zhí)行字節(jié)碼文件。3、在Java語言的簡單數(shù)據類型中,占存儲空間最少的數(shù)據類型byte.4、局部變量只能在聲明它的方法或者語句塊中使用,而且使用之前必須進行賦值。5、 Java語言共有三種注釋,分別是/,/*/,/*/。6、Java程序必須經過編譯,再經過虛擬機才能執(zhí)行
28、。通過編譯器,Java語言源程序轉換成與平臺無關的中間編碼,Java稱之為字節(jié)碼。字節(jié)碼再經過解釋器的解釋,轉換為機器碼,便可在計算機上運行。任何可以運行Java字節(jié)碼的程序都可以看成是 ,如瀏覽器和Java的開發(fā)工具等都可以看成是JVM的一部分。7、在Java語言中,如果賦值運算符=兩邊的操作數(shù)類型不一致,并且左邊操作數(shù)類型的優(yōu)先級低于右邊操作數(shù)類型的優(yōu)先級,則需要對右邊操作數(shù)進行強制轉換。8、 編譯 .java文件使用的命令是javac。9、抽象類體中,可以包含抽象方法,也可以不包含抽象方法,但類體包含抽象方法的類必須要聲明為抽象類。抽象類不能實例化,即使抽象類中沒有聲明抽象方法,也不能實
29、例 化。10、畫線的語句應該修改為static int var=100;,程序才能通過編譯運行class MyClass int var=100; static int getVal() return var; 11、 83 % 9 的值是2。12、構造方法僅用于實例化對象,對成員變量進行初始化;成員方法用于對變量進行多種操作。子類對父類的私有成員沒有訪問權限,子類對父類的成員變量和成員方法具有訪問權限。子類雖然繼承了父類的成員變量和成員方法,但并不是對父類所有成員變量和成員方法 都具有訪問權限,即并不是在自己聲明的方法中能夠訪問父類所有成員變量或成員方法。13、Java中采用接口降低程序的復
30、雜性,提高編程效率,只要是因為它使代碼可重用。14、接口可以看成是僅容納抽象方法、常量,而又不能直接生成對象的特殊抽象類。15、 BorderLayout布局類的所在類包是java.awt。16、在Java中,所有的類都是通過直接或間接地繼承得到的。17、 監(jiān)聽按扭被按下事件的監(jiān)聽器是ActionListener。18、在求解運算速度要求不高,但是要求程序簡潔的問題時,通常采用 結構。19、new是實例化對象的操作符。30、Java使用16位的Unicode字符集,因此,Java字符是一個16位的無符號整數(shù)。31、 拋出異常的關鍵字是throw和throws。32、Java的浮點類型包括dou
31、ble和float兩種。33、表達式16.8%5的結果是1.8。34、當方法有返回值時,必須在該方法體內使用return語句。35、保留字final是用于定義常量,定義值以后不能再改變。36、如果子類中的某個方法的方法頭與他的父類中的某個方法的方法頭完全一樣,但方法實現(xiàn)的功能不同,稱為子類對父類中同名方法的覆蓋。37、Java源文件中可以有1個public類。38、在Java中有兩種多態(tài),一種是使用方法的重載實現(xiàn)多態(tài),另一種是使用方法的覆蓋實現(xiàn)多態(tài)。三、判斷題1、 Java的類不允許多重繼承,但接口支持多重繼承。(T)2、無論AWT還是Swing設計的GUI組件必須要放置于容器中(T)。3、
32、在異常處理中總是將可能產生異常的語句放在try塊中,用catch子句去處理異常,而且一個try塊之后只能對應一個catch語句。(F)4、Java是面向對象程序設計語言(T)。5、 在一個Java源程序文件中,可以有多個public類。(F)6、子類向上轉換成父類類型是安全的( )。7、 abstract方法所在的類必須是abstract類。(T)8、Java采用的是半編譯半解釋方式(F)。9、 使用方法length( )可以獲得字符串或數(shù)組的長度。(T)10、接口中的方法都是abstarct方法(T)。11、 即使一個類中未顯式定義構造函數(shù),也會有一個缺省的構造函數(shù),缺省的構造函數(shù)
33、是無參函數(shù),函數(shù)體為空(T)12、靜態(tài)方法不能使用this、super來調用(T)。13、 無論Java源程序包含幾個類的定義,若該源程序文件以A.java命名,編譯后生成的都只有一名為A的字節(jié)碼文件(F)14、方法重載和方法改寫都要求方法的返回類型必須相同(T)。15、當通過實現(xiàn)Listener接口完成事件處理時,要同時實現(xiàn)該接口中的所有方法。(T)16、子類構造方法中的第一條語句一定是通過super()調用父類的對應入口參數(shù)的構造方法或是通過this()調用本類的另一對應入口參數(shù)構造方法(T)。17、Package語句必須放在程序的第一句。(T)18、java中類是單一繼承性,而接口是多繼
34、承性(T)。19、 因為Java不支持多繼承,所以定義類時implements關鍵字后面只能說明一個接口名(F)20、接口中定義的數(shù)據字段一定是常量(T)。四、簡答題1、在右邊的矩形框中寫出該程序運行的結果。public class Testpublic static void main(String args) ClassB cb1=new ClassB(1);ClassB cb2=new ClassB(1);if(cb1.x=cb2.x)System.out.println("cb1=cb2");elseSystem.out.println("cb1!=cb2
35、");class ClassB int x;ClassB(int x)this.x=x; 答案:cb1=cb22、將下面的switch語句用嵌套的if語句表示出來switch(choice) case 1:a=0; b=0; break; case 2:a=1; b=1; break; case 3:a=2; b=2; break; default:c=2; d=3; break;答案:if(a=0)b=0; Else if(a=1)b=1; Else if(a=2)b=2; Else c=2;d=3;3、寫出下列程序的運行結果import java.io.*;public clas
36、s Test public static void main(String args) subclass subW=new subclass(); subW.doPrint(); class superClass int x; superClass() x=3; System.out.println("in superClass:x="+x); void doPoint()class subclass extends superClass int x; subclass() super(); x=8; System.out.println("in subClass
37、():x="+x); void doPrint() super.doPoint(); System.out.println("super.x="+super.x+" sub.x="+x); in subClass():x=8super.x=3 sub.x=84、在右邊的矩形框中寫出該程序運行的結果。class StaticTest static int x=1;int y;StaticTest()y+;public static void main(String args ) StaticTest st=new StaticTest(); Sy
38、stem.out.println("x=" + x); System.out.println("st.y=" + st.y); st=new StaticTest(); System.out.println("st.y=" + st.y); static x+;5、寫出下列程序的運行結果class Time1 private int hour; private int minute; private int second; public Time1() setTime(0,0,0); public Time1(int hh) setT
39、ime(hh,0,0); public Time1(int hh,int mm) setTime(hh,mm,0); public Time1(int hh,int mm,int ss) setTime(hh,mm,ss); public String toString() retunr (hour+":"+(minute<10?"0":"")+minute+":"+(second<10?"0":"")+second); public class MyTime1
40、private static Time1 t0,t1,t2,t3; public static void main(String args) t0=new Time1(); t1=new Time1(11); t2=new Time1(22,22); t3=new Time1(33,33,33); System.out.println("t0="+t0.toString(); System.out.println("t1="+t1.toString(); System.out.println("t2="+t2.toString();
41、System.out.println("t3="+t3.toString(); 答案:t0=0:00:00t1=11:00:00t2=22:22:00t3=0:33:336、在右邊的矩形框中寫出該程序運行的結果。public class TestArray public static void main(String args ) int i , j ;int a = 1,3,2,5,4; for ( i = 0 ; i < a.length-1; i + ) int k = i; for ( j = i ; j < a.length ; j+ ) if ( a
42、j>ak ) k = j; int temp =ai; ai = ak; ak = temp; for ( i =0 ; i<a.length; i+ ) System.out.print(ai+" "); System.out.println( ); 答案:5、4、3、2、17、寫出下列程序的運行結果public class Exam public static void main(String args) int x=5;int m=0;x+=x+ +(x+ +m);System.out.println(x);答案:168、在右邊的矩形框中寫出該程序運行的結
43、果。class MyException extends Exceptionprivate int detail;MyException( int a ) detail = a;public String toString( )return "MyException "+detail; public class ExceptionDemopublic static void compute(int a) throws MyExceptionSystem.out.println("called compute("+a+")");if( a
44、>10 )throw new MyException(a);System.out.println("normal exit"); public static void main( String args )trycompute(6 );compute( 12 );catch( MyException e )System.out.println("Caught "+e); 答案:normal exitcalled compute(12)Caught MyException 129、試標識出下面的QQ類中的所有無效語句(用下劃線標示出),對每個無效語句
45、說出其無效的理由。class QQ private int alpha; private int beta; public static void classMethod() this.beta=this.alpha*2; /beta和alpha不是靜態(tài). public QQ() /無返回值,應該用void QQ(0,0); public QQ(int x,int y) /無返回值,應該用void alpha=this.x; /應該是this.alpha=x;this.beta=y; beta=this.y; 10、在右邊的矩形框中寫出該程序運行的結果。class OverloadDemo v
46、oid testOverload( int i ) System.out.println(“int”); void testOverload(String s) System.out.println(“String”); public static void main(String args ) OverloadDemo a=new OverloadDemo ( ); char ch=x; a.testOverload(ch); 答案:int11、寫出下列程序的運行結果public class Text public int t=4;public static void main(String args) new Text().NumberPlay();public void NumberPlay()int t=2;t=t+5;this.t=this.t-2;t=t-this.t;System
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024智慧城市交通信號控制系統(tǒng)優(yōu)化合同
- 2025年度橙子包裝設計與定制生產合同2篇
- 2025年度環(huán)保設備銷售與服務合同4篇
- 2024版人身損害賠償協(xié)議
- 二零二四年外墻清洗專業(yè)團隊服務合同樣本3篇
- 2024-2025學年高中地理第一章環(huán)境與環(huán)境問題第一節(jié)我們周圍的環(huán)境課時分層作業(yè)含解析新人教版選修6
- 二零二五版城市綜合體土方運輸與臨時堆場租賃合同3篇
- 二零二五年度餐飲業(yè)人力資源派遣合同范本3篇
- 2025年特色小鎮(zhèn)物業(yè)經營權及配套設施合作合同3篇
- 二零二五版科技公司股份交易與稅收籌劃合同3篇
- 2024年醫(yī)師定期考核臨床類考試題庫及答案(共500題)
- 2024年內蒙古自治區(qū)專業(yè)技術人員繼續(xù)教育公需課考試答案
- 2022年物流服務師職業(yè)技能競賽理論題庫(含答案)
- ?;钒踩僮饕?guī)程
- 連鎖遺傳和遺傳作圖
- DB63∕T 1885-2020 青海省城鎮(zhèn)老舊小區(qū)綜合改造技術規(guī)程
- 高邊坡施工危險源辨識及分析
- 中海地產設計管理程序
- 簡譜視唱15942
- 《城鎮(zhèn)燃氣設施運行、維護和搶修安全技術規(guī)程》(CJJ51-2006)
- 項目付款審核流程(visio流程圖)
評論
0/150
提交評論