java程序設計試題庫_第1頁
java程序設計試題庫_第2頁
java程序設計試題庫_第3頁
java程序設計試題庫_第4頁
java程序設計試題庫_第5頁
已閱讀5頁,還剩58頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、真誠為您提供優質參考資料,若有不當之處,請指正。Java語言程序設計基礎教程練習思考題參考答案第1章 Java程序設計概述1.1單項選擇題1編譯Java Application源文件將產生相應的字節碼文件,擴展名是什么 A. .javaB. .class C. .html D. .exe解答:B2Java語言具有許多優點和特點,下列選項中,哪個反映了Java中“一次編譯,隨處運行”的特點。 A. 簡單性B. 平臺無關性 C. 面向對象性D. 安全性解答:B3Java語言具有許多優點和特點,下列選項中,哪個反映了Java中并行機制的特點。 A. 多線程B. 平臺無關性 C. 面向對象性D. 安全

2、性解答:A4在Java語言中,下列哪些語句關于內存回收的說明是正確的? A程序員必須創建一個線程來釋放內存; B內存回收程序負責釋放無用內存 ; C內存回收程序允許程序員直接釋放內存 ; D內存回收程序可以在指定的時間釋放內存對象解答:B5一個Java源文件中最多只能有多少個public類。 A. 1個B. 2個 C. 3個 D. 任意多個解答:A6下面哪一個不是Java語言所具有的特點。 A. 沒有全局變量,在類的定義外部沒有任何的變量定義; B. 不直接支持指針操作,而使用更安全的引用類型; C. 支持子類對父類的多繼承;D. 具有自動垃圾收集功能;解答:C7下面哪一個不是Java開發工具

3、包JDK的組成部分。 A. Java的編譯器; B. Java的解釋器; C. Java的API繼承類庫;D. Eclipse開發工具;解答:C8JDK提供的編譯器是( )。 A. java.exeB. javac.exe C. javap.exe D. javaw.exe解答:B9作為Java應用程序入口的main方法,其聲明格式可以是( ) A. public void main(String args) B. public static void main(String args) C. public static void Main(String * args) D. public i

4、nt main(String args)解答:B10下列說法正確的是( A ) A、 JAVA程序的main方法必須寫在類里面B、 JAVA程序中可以有多個main方法 C、 JAVA程序中類名必須與文件名一樣 D、 JAVA程序的main方法中如果只有一條語句,可以不用(大括號)括起來11下列哪些語句關于Java內存回收的說明是正確的? ( B ) A、程序員必須創建一個線程來釋放內存 B、內存回收程序負責釋放無用內存 C、內存回收程序允許程序員直接釋放內存 D、內存回收程序可以在指定的時間釋放內存對象1.2填空題1、 開發與運行Java程序需要經過的三個主要步驟為_、_和_。解答:編輯源程

5、序 、編譯生成字節碼和解釋運行字節碼2、使用Java編譯器_ javac_.exe編譯源文件得到字節碼文件。3、Java應用程序必須通過Java解釋器_JAVA_.exe來解釋執行其字節碼文件。4、如果Java源文件中有一個類是public類,那么源文件的名字必須與這個類的名字完全_相同_,擴展名是.java 。5、Java應用程序總是從主類的_main_方法開始執行1.3簡答題13.簡述Java程序的開發過程? (1)使用一個文字編輯器,編寫源文件。(2)使用java編譯器,編譯源文件得到字節碼文件。(3)解釋運行字節碼,分兩種java應用程序必須通過java解釋器來解釋執行,java小應用

6、程序必須使用解釋器和瀏覽器運行程序。1.什么是Java虛擬機?為什么Java被稱作是“平臺無關的編程語言”?解答:Java虛擬機是一個可以執行Java字節碼的虛擬機進程。Java源文件被編譯成能被Java虛擬機執行的字節碼文件。Java被設計成允許應用程序可以運行在任意的平臺,而不需要程序員為每一個平臺單獨重寫或者是重新編譯。Java虛擬機讓這個變為可能,因為它知道底層硬件平臺的指令長度和其他特性。3.Java語言的關鍵特點有哪些?解答:簡單性平臺無關性面向對象性安全性分布式多線程動態性1.4綜合題第2章 Java基本的程序設計結構2.1單項選擇題1、 下面哪一項在java中是非法的標識符?(

7、 )A. $userB. pointC. You&meD. _endline解答:2、 若有定義 int a=9,b=6; 那么a>b的值是:( )A. 0B. 1C. falseD. true解答:D3、執行完以下代碼int x = new int25;后,以下說明正確的是:( )A. x24為0 B. x24未定義 C. x25為0 D. x0為空解答:A4、Java應用程序的main方法中有以下語句,則輸出的結果是( )。int x=2,3,-8,7,9; int max=x0; for(int i=1;i<x.length;i+) if(xi>max) max

8、=xi; System.out.println(max); A. 2B. -8C. 7D. 9解答:5、設 x = 1 , y = 2 , z = 3,則表達式 yz/x 的值是( )A. 3B. 3.5 C. 4D. 5解答:A5、執行System.out.println(5/4),這條代碼的輸出結果是( )A. 1B. 1.25 C. 1.5D. 0解答:A6、下列語句有錯誤的是:( )A. int a; B. int b=new int10; C. int c=new int; D. int d=null;解答:C7、下列語句有錯誤的是:( )A. int a=new int55; B.

9、 int b=new int55;C. int c=new int55; D. int d=new int5,5;解答:D8、下列哪一個不屬于Java中的8種基本數據類型( )A. double; B.char;C. int; D. String;解答:D9、以下數據類型存儲空間最大的是( )。(A)byte (B)long (C)float (D)char解答:B10、System.out.println("5" + 2);的輸出結果應該是()。A 52 B7 C2 D5答案:A11在類的定義中可以有兩個同名方法,每個方法的參數不同,這種現象稱為方法(D )。 (A)封裝

10、 (B)繼承 (C)覆蓋 (D)重載12java中定義字符串String s=”pzhu”,下面操作可以取得字符串長度的是( )。 A. s.length() B. s.length C. s.size() D. length(s)解答:A13指出下列程序運行的結果 (B)(很難)public class Example String str = new String("good"); char ch = 'a', 'b', 'c' ; public static void main(String args) Example

11、ex = new Example(); ex.change(ex.str, ex.ch); System.out.print(ex.str + " and "); System.out.print(ex.ch); public void change(String str, char ch) str = "test ok" ch0 = 'g' A、 good and abcB、 good and gbcC、 test ok and abcD、 test ok and gbc14下面代碼的運行結果為:(C)(較難)import java.i

12、o.*;import java.util.*;public class foo public static void main (String args) String s; System.out.println("s=" + s); A 代碼得到編譯,并輸出“s=”B 代碼得到編譯,并輸出“s=null”C 由于String s沒有初始化,代碼不能編譯通過D 代碼得到編譯,但捕獲到 NullPointException異常15關于以下程序段,正確的說法是( C ) 1 String s1=”abc”+”def”; 2 String s2=new String(s1); 3

13、 if(s1= =s2) 4 System.out.println(“= = succeeded”); 5 if (s1.equals(s2) 6 System.out.println(“.equals() succeeded”);A、行4與行6都將執行 B、行4執行,行6不執行 C、行6執行,行4不執行 D、行4、行6都不執行16Java application中的主類需包含main方法,main方法的返回類型是什么?( D ) A、int B、float C、double D、void17為一個boolean類型變量賦值時,可以使用(B )方式 A、 boolean = 1; B、 boo

14、lean a = (9 >= 10); C、 boolean a="真" D、 boolean a = = false;18表達式(11+3*8)/4%3的值是( D ) A、 31 B、 0 C、 1 D、 219運算符優先級別排序正確的是( A) (太難)A、 由高向低分別是:()、!、算術運算符、關系運算符、邏輯運算符、賦值運算符; B、 由高向低分別是:()、關系運算符、算術運算符、賦值運算符、!、邏輯運算符; C、 由高向低分別是:()、算術運算符、邏輯運算符、關系運算符、!、賦值運算符; D、 由高向低分別是:()、!、關系運算符、賦值運算符、算術運算符、

15、邏輯運算符;20下列值不為true的表達式有(C )。A、 "john" = = "john" B、 "john".equals("john") C、 "john" = "john" D、 "john".equals(new String("john")21、下面的方法,當輸入為2的時候返回值是多少?(D)(很難) public static int getValue(int i) int result = 0; switch (i)

16、case 1: result = result + i; case 2: result = result + i * 2; case 3: result = result + i * 3; return result; A0 B2 C4 D10答案:D解析:注意這里case后面沒有加break,所以從case 2開始一直往下運行。22、下面有關for循環的描述正確的是( A ) A、 for循環體語句中,可以包含多條語句,但要用大括號括起來 B、 for循環只能用于循環次數已經確定的情況 C、 在for循環中,不能使用break語句跳出循環 D、 for循環是先執行循環體語句,后進行條件判斷2

17、3、score是一個整數數組,有五個元素,已經正確初始化并賦值,仔細閱讀下面代碼,程序運行結果是( B ) temp = score0; for (int index = 1;index < 5;index+) if (scoreindex < temp) temp = scoreindex; A. 求最大數 B. 求最小數 C. 找到數組最后一個元素 D. 編譯出錯26、2.2填空題1、Java語言是一種完全的_面向對象 _程序設計語言 2、String s1=“China”; int n=s1.length( ); n的值為_5_3、在Java語言中,基本數據類型包括:_整數類

18、型、_浮點類型、_字符類型_和_布爾類型17、在Java的基本數據類型中,char型采用Unicode編碼方案,每個Unicode碼占用_2_字節內存空間,這樣,無論是中文字符還是英文字符,都是占用_2_字節內存空間。18、設 x = 2 ,則表達式 ( x + + )3 的值是_0_。20、設有數組定義:int MyIntArray = 10, 20, 30, 40, 50, 60, 70 ;則執行以下幾個語句后的輸出結果是: 120 。int MyIntArray = 10, 20, 30, 40, 50, 60, 70 ;int s = 0;for (int i = 0; i <

19、MyIntArray.length; i+)if (i % 2 = 1)s += MyIntArrayi;System.out.println(s);21、數組對象的長度在數組對象創建之后,就_不會_改變。數組元素的下標總是從_0_開始。22、對于數組intt=1,2,3,4,5,6來說,t.length等于_2_,t0.length等于_3_。2.3簡答題1、Java的基本數據類型有哪8種,每種類型的內存空間分別是多少。2.4綜合題26、編程計算1020的整數的平方值,將結果保存在一個數組中。27、編寫一個程序使之從鍵盤讀入10個整數存入整型數組a中,并輸出這10個整數的最大值和最小值。im

20、port java.util.Scanner;public class lianxi30 public static void main(String args) Scanner temp;float sum = new float11;float max, min;for (int i = 0; i < 10; i+) System.out.println("請輸入第一個數字(回車結束):");temp = new Scanner(System.in);String a = temp.nextLine();sumi = Integer.parseInt(a); /獲

21、取輸入的字符串max = sum0;min = sum0;for (int j = 1; j < 10; j+)if (max < sumj)max = sumj;else if (min > sumj)min = sumj;System.out.println(max);System.out.println(min);31、如果我國經濟以每年10%的速度保持穩定增長,請編寫一個程序,計算每年達到多少,多少年可以實現總量翻兩番。class exA4_1 public static void main(String args) int a=0; double i=0.10,su

22、m=1; while(sum<=4) sum=(i+1)*sum; a+; System.out.println("第"+a+"年達到"+sum); System.out.println("需要"+a+"年實現兩番"); 第3章 類和對象3.1單項選擇題1、 下列關于變量的敘述哪個是錯的?( )A. 實例變量是類的成員變量。B. 在方法中定義的局部變量在該方法被執行時創建。C. 實例變量用關鍵字static聲明。D. 局部變量在使用前必須被初始化。解答:C2、 在Java語言中,下列哪個包是編譯器自動導入的?

23、( )A. java.appletB. java.lang C. java.ioD. java.awt解答:6、 不允許作為類及類成員的訪問控制符的是( )。A. publicB. private C. staticD. protected 解答:C7、 為AB類的一個無形式參數無返回值的方法method書寫方法頭,使得使用類名AB作為前綴就可以調用它,該方法頭的形式為( )。A、 static void method( )B、 public void method( )C、 final void method( )D、 abstract void method( )解答:A8、可以在下面代碼

24、段point x處寫入的是?( )/point x public class Interesting /do something A.String str;B.static int PI=3.14;C.public class MyClass/do other thingD.import java.awt.*; 解答:D9、Java提供的許多類在不同的包中,使用下面哪個語句可以引入包中的類。A. packageB. include C. import D. add 解答:C11、已知A類被打包在packageA , B類被打包在packageB ,且B類被聲明為public ,且有一個成員變量

25、x被聲明為protected控制方式 。C類也位于packageA包,且繼承了B類 。則以下說法正確的是:( )A、A類的實例不能訪問到B類的實例B、A類的實例能夠訪問到B類一個實例的x成員C、C類的實例可以訪問到B類一個實例的x成員D、C類的實例不能訪問到B類的實例解答:C(太難)13、在Java中,關于final關鍵字的說法正確的是( )A、如果修飾變量,則一旦賦了值,就等同一個常量。B、如果修飾類,則該類只能被一個子類繼承。C、如果修飾方法,則該方法不能在子類中被覆蓋。D、如果修飾方法,則該方法所在的類不能被繼承。解答:A,C14、關于構造方法以下說法錯誤的是 ( D )。 ()構造方法

26、名必須與類名一致 ()構造方法可以重載 ()構造方法是通過new來調用 ()每個類都必須編寫構造方法代碼15、關于類的定義以下說法錯誤( B )。 (A)類定義使用class關鍵字 (B)每個類中必須有一個main方法 (C)一個包可以包含多個類 (D)java中所有類都是Object類的子類16、在創建對象時必須(C) A) 先聲明對象,然后才能使用對象 B) 先聲明對象,為對象分配內存空間,然后才能使用對象 C) 先聲明對象,為對象分配內存空間,對對象初始化,然后才能使用對象 D) 上述說法都對17、在調用方法

27、時,若要使方法改變實參的值,可以(B) A) 用基本數據類型作為參數 B) 用對象作為參數 C) A和B都對 D) A和B都不對18、關于以下程序代碼的說明正確的是( D )class HasStatic private static int x=100;public static void main(String args )HasStatic hs1=new HasStatic( ); hs1.x+; HasStatic hs2=new HasStatic( ); hs2.x+; hs1=new HasStatic( ); hs1.x+; HasStatic.x- -; System.ou

28、t.println(“x=”+x); A、 5行不能通過編譯,因為引用了私有靜態變量 B、 10行不能通過編譯,因為x是私有靜態變量C、 程序通過編譯,輸出結果為:x=103 D、 程序通過編譯,輸出結果為:x=10219、以下關于構造函數的描述錯誤的是( A )。 A、構造函數的返回類型只能是void型。 B、構造函數是類的一種特殊函數,它的方法名必須與類名相同。 C、構造函數的主要作用是完成對類的對象的初始化工作。D、一般在創建新對象時,系統會自動調用構造函數。20、Java中,在如下所示的Test類中,共有(C )個構造方法。 public class Test private int

29、x; public Test() x=35; public void Test(double f) This.x=(int)f; public Test(String s) A、 0 B、 1 C、 2 D、 321、在Java中,關于構造方法,下列說法錯誤的是( C ) A、 構造方法的名稱必須與類名相同 B、 構造方法可以帶參數 C、 構造方法不可以重載 D、 構造方法絕對不能有返回值22、在Java語言中,下列關于類的繼承的描述,正確的是(B )。 A、 一個類可以繼承多個父類 B、 一個類可以具有多個子類 C、 子類可以使用父類的所有方法 D、 子類一定比父類有更多的成員方法23、分析

30、選項中關于Java中this關鍵字的說法正確的是( A ) A、 this關鍵字是在對象內部指代自身的引用 B、 this關鍵字可以在類中的任何位置使用 C、 this關鍵字和類關聯,而不是和特定的對象關聯 D、 同一個類的不同對象共用一個this24、在Java接口中,下列選項中有效的方法聲明是( A )。 A、 public void aMethod(); B、 public final void aMethod(); C、 protected void aMethod(); D、 private void aMethod();25、下列選項中關于Java中super關鍵字的說法正確的是(

31、A )。 A、 super關鍵字是在子類對象內部指代其父類對象的引用B、 super關鍵字不僅可以指代子類的直接父類,還可以指代父類的父類 C、 子類通過super關鍵字只能調用父類的方法,而不能調用父類的屬性 D、 子類通過super關鍵字只能調用父類的屬性,而不能調用父類的方法3.2填空題1、在Java程序中,通過類的定義只能實現_單重繼承_,但通過接口的定義可以實現多_多重繼承_。2、_抽象(abstract)_方法是一種僅有方法頭,沒有具體方法體和操作實現的方法,該方法必須在抽象類之中定義。_final_方法是不能被當前類的子類重新定義的方法。3、面向對象程序設計的三個特征是_封裝、_

32、多態、_繼承4、Java是面向對象語言,類是客觀事物的_抽象_,而對象是類的_實例_。5、如果在子類中想使用被子類隱藏的父類成員變量或方法,就可以使用關鍵字_ super_。6、Java中有一種叫作_構造方法_的特殊方法用來對類的對象成員進行初始化。7、JAVA語言中提供了兩種類型的字符串類來處理字符串,它們是_String_和_StringBuffer類8、Java語言中,所有 的類都是_Object的子類,Java的窗口通常是_JFrame_的子類,_抽象_類只能定義但不能被實例化,_ 最終_類不能被繼承9、一般Java程序的類體由兩部分組成:一部分是_屬性_,另一部分是_方法_10、分別

33、用_class_關鍵字來定義類,用_new_關鍵字來分配實例存儲空間。11、Java中類成員的限定詞有以下幾種:_ private_ _, public _ _, protected _ _, _缺省_ _。其中,_public _的限定的范圍最大。類中限定為_ private _的成員,只能被這個類本身內部訪問。12、Java類中,如果類的定義者沒有顯式的定義任何構造方法,系統將自動提供一個_無參默認_構造方法。13、在子類中定義與父類的相同的方法,若在多個子類中定義相同的方法,則可以調用不同子類中的相同方法而實現不同的功能,這實現了程序運行時的_ 多態 。3.3簡答題1. 簡單闡述方法的重

34、載和方法的重寫之間的區別解答:重寫是子類的方法覆蓋父類的方法,要求方法名和參數都相同重載是在同一個類中的兩個或兩個以上的方法,擁有相同的方法名,但是參數卻不相同2、 簡述實例變量和類變量的區別。解答:類變量也叫靜態變量,也就是在變量前加了static 的變量;實例變量也叫對象變量,即沒加static 的變量;區別在于:類變量是所有對象共有,其中一個對象將它值改變,其他對象得到的就是改變后的結果;而實例變量則屬對象私有,某一個對象將其值改變,不影響其他對象;2、簡述實例方法和類方法的區別解答:實例方法可以對當前對象的實例變量進行操作,也可以對類變量進行操作,實例方法由實例對象調用。但類方法不能訪

35、問實例變量,只能訪問類變量。類方法可以由類名直接調用,也可由實例對象進行調用。類方法中不能使用this或super關鍵字。3、面向對象的三個基本特征是什么,分別簡單介紹每個特征。解答:三大特性是:封裝,繼承,多態。封裝性就是把對象的屬性和服務結合成一個獨立的單位,并盡可能隱蔽對象的內部細節。特殊類的對象擁有其一般類的全部屬性與服務,稱作特殊類對一般類的繼承。對象的多態性是指在一般類中定義的屬性或服務被特殊類繼承之后,可以具有不同的數據類型或表現出不同的行為。這使得同一個屬性或服務在一般類及其各個特殊類中具有不同的語義。4、簡單闡述成員變量和局部變量的區別。解答:1)成員變量在整個類內都有效,局

36、部變量只在定義它的方法內有效。2)成員變量又分為實例成員變量(簡稱實例變量)和類變量(也稱靜態變量),如果成員變量的類型前面加上關鍵字static,這樣的成員變量稱為類變量或靜態變量。3)如果局部變量的名字與成員變量的名字相同,則成員變量被隱藏,也就是說,這個成員變量在這個方法內暫時失效。這時如果想在該方法內使用成員變量,必須使用關鍵字this。5、 簡述對象的引用和實體。解答:當用類創建一個對象時,類中的成員變量被分配內存空間,這些內存空間稱為該對象的實體,而對象中存放著引用,以確保實體由該對象操作使用。沒有實體的對象稱為空對象,空對象不能使用,即不能讓一個空對象去調用方法產生行為。6、簡述

37、this關鍵字的意義,以及它在成員方法和構造方法中如何使用。解答:this是Java的一個關鍵字,表示某個對象。this可以出現在實例方法和構造方法中,但不可以出現在類方法中。this可以出現在實例方法和構造方法中,但不可以出現在類方法中。this關鍵字出現在類的構造方法中時,代表使用該構造方法所創建的對象。實例方法必須通過對象來調用,當this關鍵字出現在類的實例方法中時,代表正在調用該方法的當前對象。成員函數中定義了和成員變量中相同的變量時,引用成員變量要用this;構造函數中調用同一個類的其他構造函數時用this。7、簡單描述Java的參數傳值中的兩種方式,基本數據類型參數的傳值和引用類

38、型參數的傳值?解答:在基本數據類型參數的傳值中,基本數據類型的參數向該參數傳遞的值的級別不可以高于該參數的級別。在引用類型參數的傳值中,Java的引用類型數據包括對象、數組和接口,當參數是引用類型時,“傳值”傳遞的是變量的引用而不是變量所引用的實體。如果改變參數變量所引用的實體,就會導致原變量的實體發生同樣的變化,但是如果改變參數的引用不會影響向其傳值的變量的引用。8、基本數據類型和對象作為參數傳遞的不同? 解答:(1) 基本數據類型作為參數在方法中傳遞的是值傳遞。(2) 對象是引用傳遞,當對象作為參數傳遞時,傳遞的是對象的地址。3.4綜合題1、定義一個“點”(Point)類用來表示三維空間中

39、的點,類體的成員變量x,y,z分別表示三維空間的坐標。類體中具有如下成員方法的定義:1)構造方法Point()可以生成具有特定坐標的點對象。2)setX(), setY(), setZ()為可以設置三個坐標的方法。3.)getDistance()為可以計算該點距離原點距離平方的方法。解答:class Pointdouble x,y,z ;Point(double _x,double _y,double _z)x = _x ;y = _y ;z =_z ;void setX(double _x)x=_x ;void setY(double _y)y=_y ;void setZ(double _z

40、)z=_z ;double getDistance()return ( x*x+y*y+z*z) ;2、編寫一個Java應用程序Test類,實現成員方法max(a,b)的重載。具體要求如下:a)編寫void max(int a,int b)成員方法,對兩個整數進行大小的比較,輸出打印較大的那個整數。b)編寫void max(float a,float b)成員方法,對兩個float數進行大小的比較,輸出打印較大的那個float數。c)編寫void max(double a,double b)成員方法,對兩個double數進行大小的比較,輸出打印較大的那個double數。public class

41、 Testvoid max(int a,int b)System.out.println(a>b ? a:b) ;void max(float a,float b)System.out.println(a>b ? a:b) ;void max(double a, double b)System.out.println(a>b ? a:b) ;public static void main(String args)Test t =new Test() ;t.max(3,4) ;3、編寫一個矩形類對數學中的矩形進行抽象描述,并具有方法可以計算矩形的周長和面積,具體分為以下三個子任

42、務完成。(1)創建Rectangle類,添加屬性width、height,并定義構造方法Rectangle(double _width, double _height); (2)在Rectangle類中添加兩種方法computCircum()和computArea()分別計算矩形的周長和面積; (3)編程利用Rectangle對象輸出一個30*40的矩形的周長和面積。解答:public class TestRectang public static void main(String args) / TODO Auto-generated method stubRectangle rect1 =

43、 new Rectangle(20,30) ;System.out.println(putArea();System.out.println(putCircum();class Rectangledouble width,height ;Rectangle()width = 0 ;height = 0 ;Rectangle(double _width,double _height)width = _width ;height = _height ;double computArea() return width*height ;double computCircum()return 2*(wi

44、dth+height) ;第4章 繼承、接口和內部類4.1單項選擇題1、 Java中用于定義接口的關鍵字是( )A、importB、packageC、class D、interface解答:D2、 以下關于abstract的說法,正確的是( )A、abstract只能修飾類B、abstract只能修飾方法C、abstract類中必須有abstract方法D、abstarct方法所在的類必須用abstract修飾解答:D3、 下列哪種說法是正確的( ) A、私有方法不能被子類覆蓋。 B、子類可以覆蓋超類中的任何方法。 C、覆蓋方法可以聲明自己拋出的異常多于那個被覆蓋的方法。 D、覆蓋方法中的參數

45、清單必須是被覆蓋方法參數清單的子集。 解答:A4、關于類繼承的說法,正確的是( )A、Java 類允許多重繼承B、Java接口允許多繼承C、接口和類都允許多繼承D、接口和類都不允許多繼承解答:B5、關于抽象類,正確的是_。 A. 抽象類中不可以有非抽象方法B. 某個非抽象類的父類是抽象類,則這個子類必須重載父類的所有抽象方法C. 可以用抽象類直接去創建對象D. 接口和抽象類是同一個概念解答:B8、 抽象類A和抽象類B的定義如下:abstract class A abstract int getinfo();public class B extends A private int a = 0;p

46、ublic int getinfo() return a;public static void main(String args) B b = new B();System.out.println(b.getinfo();關于上述代碼說明正確的是( )。A. 輸出結果為0 B.通過編譯但沒有輸出任何結果C. 第5行不能通過編譯 D. 程序第2行不能通過編譯解答:A9、下面程序的運行結果是_class ex4_5_11_A protected static int count = 0;public ex4_5_11_A() count+;class ex4_5_11_B extends ex4_

47、5_11_A public ex4_5_11_B() count+;class ex4_5_11 public static void main(String args) ex4_5_11_B x = new ex4_5_11_B();System.out.println("count=" + x.count);A. count=1 B. count=2C. count=3 D. count=4解答:B10、設有下面兩個類的定義:class Person long id; / 身份證號 String name; / 姓名 class Student extends Pers

48、on int score; / 入學總分 int getScore() return score; 問:類Person和類Student的關系是( )A、包含關系 B、繼承關系 C、關聯關系 D、無關系,上述類定義有語法錯誤解答:B11、以下程序代碼錯誤的是( B )。 abstract class P class A extends P abstract class B extends P ()P p=new A(); ()P p=new B();()A a=new A(); ()P p=new P()void foo();12、下面是People和Child類的定義和構造方法,每個構造方法

49、都輸出編號。在執行new Child("mike")的時候都有哪些構造方法被順序調用?請選擇輸出結果 ( D)class People String name; public People() System.out.print(1); public People(String name) System.out.print(2); = name; class Child extends People People father; public Child(String name) System.out.print(3); = name; father = new People(name + ":F"); public Child() System.out.print(4); A312 B 32 C 432 D 13213、選項中哪一行代碼可以替換題目中/add code here而不產生編譯錯誤?(A)public abstract class MyClass public int constInt = 5; /add code here public void method() A pub

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論