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

下載本文檔

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

文檔簡介

1、Java語言程序設計基礎教程練習思考題參考答案第1章 Java程序設計概述1.1單項選擇題1編譯Java Application源文件將產(chǎn)生相應的字節(jié)碼文件,擴展名是什么 A. .javaB. .class C. .html D. .exe解答:B2Java語言具有許多優(yōu)點和特點,下列選項中,哪個反映了Java中“一次編譯,隨處運行”的特點。 A. 簡單性B. 平臺無關性 C. 面向對象性D. 安全性解答:B3Java語言具有許多優(yōu)點和特點,下列選項中,哪個反映了Java中并行機制的特點。 A. 多線程B. 平臺無關性 C. 面向對象性D. 安全性解答:A4在Java語言中,下列哪些語句關于內

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

3、B. Java的解釋器; C. Java的API繼承類庫;D. Eclipse開發(fā)工具;解答: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 int main(String args)解答:B

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

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

6、ava虛擬機?為什么Java被稱作是“平臺無關的編程語言”?解答:Java虛擬機是一個可以執(zhí)行Java字節(jié)碼的虛擬機進程。Java源文件被編譯成能被Java虛擬機執(zhí)行的字節(jié)碼文件。Java被設計成允許應用程序可以運行在任意的平臺,而不需要程序員為每一個平臺單獨重寫或者是重新編譯。Java虛擬機讓這個變?yōu)榭赡埽驗樗赖讓佑布脚_的指令長度和其他特性。3.Java語言的關鍵特點有哪些?解答:簡單性平臺無關性面向對象性安全性分布式多線程動態(tài)性1.4綜合題第2章 Java基本的程序設計結構2.1單項選擇題1、 下面哪一項在java中是非法的標識符?( )A. $userB. pointC. You

7、&meD. _endline解答:2、 若有定義 int a=9,b=6; 那么ab的值是:( )A. 0B. 1C. falseD. true解答:D3、執(zhí)行完以下代碼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;imax) max=xi; System.out.println(max); A. 2B. -8C. 7D. 9解答:5、設 x =

8、1 , y = 2 , z = 3,則表達式 yz/x 的值是( )A. 3B. 3.5 C. 4D. 5解答:A5、執(zhí)行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. int b=new int55;C. int c=new int55; D. int d=new int5,5;解

9、答:D8、下列哪一個不屬于Java中的8種基本數(shù)據(jù)類型( )A. double; B.char;C. int; D. String;解答:D9、以下數(shù)據(jù)類型存儲空間最大的是( )。(A)byte (B)long (C)float (D)char解答:B10、System.out.println(5 + 2);的輸出結果應該是()。A 52 B7 C2 D5答案:A11在類的定義中可以有兩個同名方法,每個方法的參數(shù)不同,這種現(xiàn)象稱為方法(D )。 (A)封裝 (B)繼承 (C)覆蓋 (D)重載12java中定義字符串String s=”pzhu”,下面操作可以取得字符串長度的是( )。 A. s

10、.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 ex = new Example(); ex.change(ex.str, ex.ch); System.out.print(ex.str + and ); System.out.print(ex.ch); public v

11、oid 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.io.*;import java.util.*;public class foo public static void main (String args) String s; System.out.println(s= + s); A 代碼得到編譯,并輸出“s=”B 代碼得到編譯,并輸出“

12、s=null”C 由于String s沒有初始化,代碼不能編譯通過D 代碼得到編譯,但捕獲到 NullPointException異常15關于以下程序段,正確的說法是( C ) 1 String s1=”abc”+”def”; 2 String s2=new String(s1); 3 if(s1= =s2) 4 System.out.println(“= = succeeded”); 5 if (s1.equals(s2) 6 System.out.println(“.equals() succeeded”);A、行4與行6都將執(zhí)行 B、行4執(zhí)行,行6不執(zhí)行 C、行6執(zhí)行,行4不執(zhí)行 D、行

13、4、行6都不執(zhí)行16Java application中的主類需包含main方法,main方法的返回類型是什么?( D ) A、int B、float C、double D、void17為一個boolean類型變量賦值時,可以使用(B )方式 A、 boolean = 1; B、 boolean 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運算符優(yōu)先級別排序正確的是( A) (太難)A、 由高向低分別是:()、!、算術運算符、關系運算符、邏

14、輯運算符、賦值運算符; B、 由高向低分別是:()、關系運算符、算術運算符、賦值運算符、!、邏輯運算符; C、 由高向低分別是:()、算術運算符、邏輯運算符、關系運算符、!、賦值運算符; D、 由高向低分別是:()、!、關系運算符、賦值運算符、算術運算符、邏輯運算符;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(in

15、t i) int result = 0; switch (i) 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循環(huán)的描述正確的是( A ) A、 for循環(huán)體語句中,可以包含多條語句,但要用大括號括起來 B、 for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況 C、 在for循環(huán)中,不能使用break語

16、句跳出循環(huán) D、 for循環(huán)是先執(zhí)行循環(huán)體語句,后進行條件判斷23、score是一個整數(shù)數(shù)組,有五個元素,已經(jīng)正確初始化并賦值,仔細閱讀下面代碼,程序運行結果是( B ) temp = score0; for (int index = 1;index 5;index+) if (scoreindex temp) temp = scoreindex; A. 求最大數(shù) B. 求最小數(shù) C. 找到數(shù)組最后一個元素 D. 編譯出錯26、2.2填空題1、Java語言是一種完全的_面向對象 _程序設計語言 2、String s1=“China”; int n=s1.length( ); n的值為_5_3、

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

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

19、這10個整數(shù)的最大值和最小值。import 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(請輸入第一個數(shù)字(回車結束):);temp = new Scanner(System.in);String a = temp.nextLine();sumi = Integer.parseInt(a); /獲

20、取輸入的字符串max = sum0;min = sum0;for (int j = 1; j 10; j+)if (max sumj)min = sumj;System.out.println(max);System.out.println(min);31、如果我國經(jīng)濟以每年10%的速度保持穩(wěn)定增長,請編寫一個程序,計算每年達到多少,多少年可以實現(xiàn)總量翻兩番。class exA4_1 public static void main(String args) int a=0; double i=0.10,sum=1; while(sumb ? a:b) ;void max(float a,flo

21、at b)System.out.println(ab ? a:b) ;void max(double a, double b)System.out.println(ab ? a:b) ;public static void main(String args)Test t =new Test() ;t.max(3,4) ;3、編寫一個矩形類對數(shù)學中的矩形進行抽象描述,并具有方法可以計算矩形的周長和面積,具體分為以下三個子任務完成。(1)創(chuàng)建Rectangle類,添加屬性width、height,并定義構造方法Rectangle(double _width, double _height); (2

22、)在Rectangle類中添加兩種方法computCircum()和computArea()分別計算矩形的周長和面積; (3)編程利用Rectangle對象輸出一個30*40的矩形的周長和面積。解答:public class TestRectang public static void main(String args) / TODO Auto-generated method stubRectangle rect1 = new Rectangle(20,30) ;System.out.println(putArea();System.out.println(rect1.co

23、mputCircum();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*(width+height) ;第4章 繼承、接口和內部類4.1單項選擇題1、 Java中用于定義接口的關鍵字是( )A、importB、pack

24、ageC、class D、interface解答:D2、 以下關于abstract的說法,正確的是( )A、abstract只能修飾類B、abstract只能修飾方法C、abstract類中必須有abstract方法D、abstarct方法所在的類必須用abstract修飾解答:D3、 下列哪種說法是正確的( ) A、私有方法不能被子類覆蓋。 B、子類可以覆蓋超類中的任何方法。 C、覆蓋方法可以聲明自己拋出的異常多于那個被覆蓋的方法。 D、覆蓋方法中的參數(shù)清單必須是被覆蓋方法參數(shù)清單的子集。 解答:A4、關于類繼承的說法,正確的是( )A、Java 類允許多重繼承B、Java接口允許多繼承C、

25、接口和類都允許多繼承D、接口和類都不允許多繼承解答:B5、關于抽象類,正確的是_。 A. 抽象類中不可以有非抽象方法B. 某個非抽象類的父類是抽象類,則這個子類必須重載父類的所有抽象方法C. 可以用抽象類直接去創(chuàng)建對象D. 接口和抽象類是同一個概念解答:B8、 抽象類A和抽象類B的定義如下:abstract class A abstract int getinfo();public class B extends A private int a = 0;public int getinfo() return a;public static void main(String args) B b

26、= 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_5_11_A public ex4_5_11_B() count+;class ex4_5_11 public static void ma

27、in(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 Person int score; / 入學總分 int getScore() return score; 問:類Person和類Student的關系是( )A、包含關系

28、B、繼承關系 C、關聯(lián)關系 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類的定義和構造方法,每個構造方法都輸出編號。在執(zhí)行new Child(mike)的時候都有哪些構造方法被順序調用?請選擇輸出結果 ( D)class People String name; pub

29、lic 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、選

30、項中哪一行代碼可以替換題目中/add code here而不產(chǎn)生編譯錯誤?(A)public abstract class MyClass public int constInt = 5; /add code here public void method() A public abstract void method(int a);B constInt = constInt + 5;C public int method();D public abstract void anotherMethod() 15、以下哪項是接口的正確定義?( D ) A、 interface B void pri

31、nt() B、 abstract interface B void print() C、 abstract interface B extends A1,A2 /A1、A2為已定義的接口 abstract void print() ; D、 interface B void print();16、A派生出子類B,B派生出子類C,并且在Java源代碼中有如下聲明:1. A a0=new A(); 2. A a1 =new B(); 3. A a2=new C(); 問以下哪個說法是正確的? ( D )A、只有第1行能通過編譯B、第1、2行能通過編譯,但第3行編譯出錯 C、第1、2、3行能通過編譯,但第2、3行運行時出錯 D、第1行、第2行和第3行的聲明都是正確的 17、假設A類有如下定義,設a是A類的一個實例,下列語句調用哪個是錯誤的?( C ) class A int i; static String s; void method1() static void method2() A、System.out.println(

溫馨提示

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

評論

0/150

提交評論