《Java語言程式設計基礎教程》 練習思考題參考答案

來源:互聯網
上載者:User

《Java語言程式設計基礎教程》

練習思考題參考答案

第1章 Java程式設計概述 1.9 練習思考題

1、 Java運行平台包括三個版本,請選擇正確的三項:(     )

   A. J2EE B. J2ME 

   C. J2SE          D. J2E

解答:A,B,C

2、 Java JDK中反編譯工具是:(     )

   A. javac B. java

   C. jdb         D. javap

解答:D

3、 public static void main方法的參數描述是:(      )

A. String args[] B. String[] args

C. Strings args[] D. String args

解答:A,B

4、 在Java中,關於CLASSPATH環境變數的說法不正確的是:(      )

A. CLASSPATH一旦設定之後不可修改,但可以將目錄添加到該環境變數中。

B. 編譯器用它來搜尋各自的類檔案。

C. CLASSPATH是一個目錄列表。

D. 解譯器用它來搜尋各自的類檔案。

解答:A

5、 編譯Java Application源檔案將產生相應的位元組碼檔案,副檔名為(     )

   A. .java B. .class

   C. .html         D. .exe

解答:B

6、 開發與運行Java程式需要經過的三個主要步驟為____________、____________和____________。

7、 如果一個Java Applet來源程式檔案只定義有一個類,該類的類名為MyApplet,則類MyApplet必須是______類的子類並且儲存該來源程式檔案的檔案名稱為______。

8、 如果一個Java Applet程式檔案中定義有3個類,則使用Sun公司的JDK編譯器         編譯該來源程式檔案將產生______個檔案名稱與類名相同而副檔名為______的位元組碼檔案。

9、 開發與運行Java程式需要經過哪些主要步驟和過程。

10、Java程式是由什麼組成的。一個程式中必須要有public類嗎。Java源檔案的命名規則是怎麼樣的。

11、編寫一個簡單的Java應用程式,該程式在命令列視窗輸出兩行文字:“你好,很高興學習Java”和“We are students”。 第2章 Java基本的程式設計結構 2.7練習思考題

1、 從下面選項中,選擇三個有效標示符:(     )

A. IDoLikeTheLongNameClass       B. $byte 

C. const D. _ok

E. 3_case

解答:A,B,D

2、 下面哪一項在java中是非法的標識符。(     )

A. $user

B. point

C. You&me

D. _endline

解答:C

3、 下列不屬於Java保留字的是:(     )

A. sizeof

B. super

C. abstract

D. break

解答:A

4、 下面哪些java語句會導致無限迴圈?(      )

I、 while (true) i = 0;

II、 while (false) i = 1;

III、 while (!false) i = 0;

A、僅僅III

B、I 和III

C、僅僅I

D、I, II 和III

解答:B

5、 下列整數資料型別中,需要記憶體空間最少的是 (      )。

A. short  B. long 

C. int  D. byte

解答:D

6、 下面代碼執行後,正確的輸出結果是:(   )

public class Example {

public static void main(String args[]) {

int l = 0;

do {

System.out.println("Doing it for l is:" + l);

} while (--l > 0);

System.out.println("Finish");

}

}

A. Doing it for l is 3

B. Doing it for l is 1

C. Doing it for l is 2

D. Doing it for l is 0

E. Doing it for l is ?C1

F. Finish

解答:D,F

7、 若有定義 int a=1,b=2; 那麼運算式(a++)+(++b) 的值是:(      )

A. 3 B. 4

C. 5 D. 6

解答:B

8、 若有定義 int a=9,b=6; 那麼a>b的值是:(     )

A. 0 B. 1

C. false D. true

解答:D

9、 假定有變數定義: int k=7,x=12; 那麼能使值為3的運算式是:(   )

A. x%=(k%=5) B. x%=(k-k%5)

C. x%=k-k%5 D. (x%=k)-(k%=5) 

解答:D

10、執行完以下代碼int[ ] x = new int[25];後,以下說明正確的是:(      )

A. x[24]為0  B. x[24]未定義 

C. x[25]為0  D. x[0]為空白

解答:A

11、Java應用程式的main方法中有以下語句,則輸出的結果是(     )。

int[] x={2,3,-8,7,9}; 

int max=x[0]; 

for(int i=1;i<x.length;i++){ 

if(x[i]>max) 

max=x[i]; 

System.out.println(max); 

A. 2 B. -8

C. 7 D. 9

解答:D

12、設 x = 1 , y = 2 , z = 3,則運算式  y+=z--/++x  的值是(     )

A. 3 B. 3.5 

C. 4 D. 5

解答:A

13、有整型數組:int[] x={2,33,88,5,10};,則調用方法 Arrays.sort(x) 後,數組x中的元素值依次是。(      )

A. 88 33 10 5 2

B. 2 5 10 33 88

C. 88 10 2 33 5

D. 5 33 2 10 88

解答:B

14、下列語句有錯誤的是:(     )

A. int []a;     B. int []b=new int[10];    

C. int c[]=new int[];     D. int d[]=null;

解答:C

15、下列語句有錯誤的是:(     )

A. int a[][]=new int[5][5];   B. int [][]b=new int[5][5];

C. int []c[]=new int[5][5];   D. int [][]d=new int[5,5];

解答:D

16、關於下面的程式,正確的結論是______。

public class ex4_7{

public static void main(String args[]){

     int a[]=new int[5];

     boolean b[]=new boolean[5];

     System.out.print(a[1]);

     System.out.println(b[2]);

     }

}

A. 運行結果為0false  B. 運行結果為1true

C. 程式無法通過編譯     D. 可以通過編譯但結果不確定

解答:A

17、在Java的基礎資料型別 (Elementary Data Type)中,char型採用Unicode編碼方案,每個Unicode碼佔用______位元組記憶體空間,這樣,無論是中文字元還是英文字元,都是佔用______位元組記憶體空間。

18、設 x = 2 ,則運算式 ( x + + )/3 的值是______。

19、若x = 5,y = 10,則x < y和x >= y的邏輯值分別為______和______。

20、設有數組定義:

int MyIntArray[] = { 10, 20, 30, 40, 50, 60, 70 };

則執行以下幾個語句後的輸出結果是:         。

int MyIntArray[] = { 10, 20, 30, 40, 50, 60, 70 };

int s = 0;

for (int i = 0; i < MyIntArray.length; i++)

if (i % 2 == 1)

s += MyIntArray[i];

System.out.println(s);

21、數組對象的長度在數組對象建立之後,就______改變。數組元素的下標總是從______開始。

22、對於數組int[][]t={{1,2,3},{4,5,6}}來說,t.length等於______,t[0].length等於______。

23、已知數組a的定義為“int a[]={1,2,3,4,5};”,則a[2]=______,數組b的定義為“int b[]=new int[5];”,則b[2]=______,數組c的定義為“Object []c=new Object[5];”,則c[2]=______。

24、調用數組元素時,用______和______來唯一確定數組中的元素。

25、什麼是數組。數組有哪些特點。Java中建立數組需要哪些步驟。如何訪問數組的第一個元素。

26、編程計算10~20的整數的平方值,將結果儲存在一個數組中。

27、編寫一個程式使之從鍵盤讀入10個整數存入整型數組a中,然後逆序輸出這10個整數。

28、某人有5張3分和4張5分的郵票,請編寫一個程式,計算由這些郵票中的1張或若干張可以得到多少種不同的郵資。

29、分析寫出下列程式完成的功能。

public class sun {

public static void main(String args[]) {

double sum = 0.0;

for (int i = 1; i <= 100; i++)

sum += 1.0 / (double) i;

System.out.println("sum=" + sum);

}

}

30、編寫一個字元介面的Java Application程式,接受使用者輸入的10個整數,並輸出這10個整數的最大值和最小值。

31、如果我國經濟以每年10%的速度保持穩定增長,請編寫一個程式,計算每年達到多少,多少年可以實現總量翻兩番。

class exA4_1{

  public static void main(String args[]){

    int a=0;

    double i=0.10,sum=1;

    while(sum<=4){

      sum=(i+1)*sum;

      a++;

      System.out.println("第"+a+"年達到"+sum);

    }

    System.out.println("需要"+a+"年實現兩番");

  }

}

第3章 類和對象 3.9 練習思考題

1、 下列關於變數的敘述哪個是錯的。(     )

A. 執行個體變數是類的成員變數。

B. 在方法中定義的局部變數在該方法被執行時建立。

C. 執行個體變數用關鍵字static聲明。

D. 局部變數在使用前必須被初始化。

解答:C

2、 在Java語言中,下列哪個包是編譯器自動匯入的。(     )

A. java.applet B. java.lang 

C. java.io D. java.awt

解答:B

3、 當類的成員未用存取權限修飾符時,Java認為此成員的存取權限為(      )。

A. private  B. protected 

C.friendly  D.public

解答:C

4、 下面哪個關鍵字不是用來控制對類成員的訪問的。(     )

A. public B. protected  

C. default D. private

解答:C

5、 下面哪一個特性不是物件導向編程主要體現的(    )。

A.  封裝性 B.  繼承

C.  多態 D.  類

解答:C

6、 不允許作為類及類成員的存取控制符的是(     )。

A. public B. private 

C. static D. protected 

解答:C

7、 為AB類的一個無形式參數無傳回值的方法method書寫方法頭,使得使用類名AB作為首碼就可以調用它,該方法頭的形式為(     )。

A、 static  void  method( ) B、 public  void  method( )

C、 final  void  method( ) D、 abstract  void  method( )

解答:A

8、 可以在下面程式碼片段point x處寫入的是。(     )

//point x 

public class Interesting{ 

//do something 

}

A. String str;

B. static int PI=3.14;

C. public class MyClass{//do other thing…}

D. import java.awt.*; 

解答:D

9、 下列關於變數的敘述哪個是錯的。(      )

A、執行個體變數是類的成員變數。

B、在方法中定義的局部變數在該方法被執行時建立。

C、執行個體變數用關鍵字static聲明。

D、局部變數在使用前必須被初始化。

解答:C

10、下列哪個類聲明是正確的。(       )

A、abstract final class HI{}

B、abstract private move(){}  

C、protected private number; 

D、public abstract class Car{}

解答:D

11、已知A類被打包在packageA , B類被打包在packageB ,且B類被聲明為public ,且有一個成員變數x被聲明為protected控制方式 。C類也位於packageA包,且繼承了B類 。則以下說法正確的是:(      )

A、A類的執行個體不能訪問到B類的執行個體

B、A類的執行個體能夠訪問到B類一個執行個體的x成員

C、C類的執行個體可以訪問到B類一個執行個體的x成員

D、C類的執行個體不能訪問到B類的執行個體

解答:C

12、下列命題為真的是:(       ) 

A、所有類都必須定義一個建構函式。 

B、建構函式必須有傳回值。 

C、建構函式可以訪問類的非靜態成員。 

D、建構函式必須初始化類的所有資料成員。 

解答:C

13、在Java中,關於final關鍵字的說法正確的是(      )

A、如果修飾變數,則一旦賦了值,就等同一個常量。

B、如果修飾類,則該類只能被一個子類繼承。

C、如果修飾方法,則該方法不能在子類中被覆蓋。

D、如果修飾方法,則該方法所在的類不能被繼承。

解答:A,C

14、在Java中,下面關於包的陳述中正確的是(      )

A、包的聲明必須是源檔案的第一句代碼。

B、包的聲明必須緊跟在import語句的後面。

C、只有公用類才能放在包中。

D、可以將多個源檔案中的類放在同一個包中。

解答:A,D

15、______方法是一種僅有方法頭,沒有具體方法體和操作實現的方法,該方法必須在抽象類別之中定義。______方法是不能被當前類的子類重新定義的方法。

16、 什麼叫方法的重載。 構造方法可以重載麼。

17、 簡述執行個體變數和類變數的區別。

第4章 繼承、介面和內部類 4.5 練習思考題

1、 Java

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.