面向?qū)ο蟪绦蛟O(shè)計(jì)JAVA語言程序設(shè)計(jì)期末考試試題及部分答案知識講解_第1頁
面向?qū)ο蟪绦蛟O(shè)計(jì)JAVA語言程序設(shè)計(jì)期末考試試題及部分答案知識講解_第2頁
面向?qū)ο蟪绦蛟O(shè)計(jì)JAVA語言程序設(shè)計(jì)期末考試試題及部分答案知識講解_第3頁
面向?qū)ο蟪绦蛟O(shè)計(jì)JAVA語言程序設(shè)計(jì)期末考試試題及部分答案知識講解_第4頁
面向?qū)ο蟪绦蛟O(shè)計(jì)JAVA語言程序設(shè)計(jì)期末考試試題及部分答案知識講解_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、學(xué)習(xí)-好資料、單選題1. 在下列概念中,Java語言只保留了 DA.運(yùn)算符重載B.結(jié)構(gòu)和聯(lián)合2. 下列類定義中,不正確的是BA. class x .y1,y2 . C. public class x extends Applet . 3. 下列語句序列執(zhí)行后,k的值是BC.指針D.方法重載B. static class x implementsD. class x extends y . 更多精品文檔int m=3, n=6, k=0;while( (m+) < (- - n) ) +k;i+先把i的初值賦給表達(dá)式(i+),作為表達(dá)式(i+)的值,然后i自增1作為i 的值。如i=1,則表

2、達(dá)式(i+)的值等于1,而i的值變?yōu)?。+ii先自增1,再把自增后的值賦給表達(dá)式(+i)。如i=1,則表達(dá)式(+i )的值等于2, i的值也為2,A. 0B. 1C. 2D. 3C. i+ j;D. a(0) = 66;C.線程的D.不能繼承C. 2D. 33;則以下的表達(dá)式中,值為true的是C4. 設(shè)i、j為int型變量名,a為int型數(shù)組名,以下選項(xiàng)中,正確的賦值語句是AA. a0 = 7;B. i = i + 25. Java語言的類間的繼承關(guān)系是 BA.多重的B.單重的6. 下列語句序列執(zhí)行后,k的值是Cint i=10, j=18, k=30;switch( j - i ) cas

3、e 8 : k+;case 9 : k+=2;case 10: k+=3; default : k/=j;A. 31B. 37. 設(shè)有定義 float x=3.5f, y=4.6f, z=5.7fAx > y | x > zBz > ( y + x )Cx != yDx < y &( x< z )8.下列修飾符中,定義類頭時能使用的修飾符是CAprivateB staticCabstractDprotected9.設(shè)i 、 j 、k 為類 x中定義的 int 型變量名,下列類 x的構(gòu)造函數(shù)中不正確的是 BAx( int m) . Bvoid x( int

4、m) . Cx( int m, int n) . Dx( int h,int m,int n) . 10. 下列對封裝性的描述中,錯誤的是 DA. 封裝體包含了屬性和行為B. 封裝使得抽象的數(shù)據(jù)類型提高了可重用性C. 被封裝的某些信息在封裝體外是不可見的D. 封裝體中的屬性和行為的訪問權(quán)限是相同的11. 下列關(guān)于包的描述中,錯誤的是BA.包是若干個類的集合B.包是一種特殊的類型C.包是使用package語句創(chuàng)建的D.包有有名包和無名包兩種12. 下列關(guān)于 Applet 程序的描述中,錯誤的是 CAApplet 程序的主類必須是 Applet 類得子類BApplet 不是完整的獨(dú)立程序C. Ap

5、plet程序的主類中應(yīng)有一個ma in ()方法D. Applet的字節(jié)碼文件必須嵌套在一個HTML文件中DPanel13. 下列界面元素中,不是容器的是CA DialogB FrameC List14. 下列關(guān)于異常處理的描述中,錯誤的是 DA. 程序運(yùn)行時異常由Java虛擬機(jī)自動進(jìn)行處理B. 使用try-catch-finally語句捕獲異常C. 使用throw語句拋出異常D. 捕獲到的異常只能在當(dāng)前方法中處理,不能在其他方法中處理15. 以下方法不屬于迭代器( Iterator )接口所定義的方法的是 DA hasNext ()B next ()Cremove()DnextElement

6、 ()16. 主線程屬于學(xué)習(xí)-好資料A.守護(hù)線程B. Thread線程C.用戶線程D. Runnable線程二、填空題1. 三目運(yùn)算符的3個操作數(shù)中,第一個操作數(shù)的類型必須是邏輯 型的。2. 在Java的基本數(shù)據(jù)類型中,char型采用Uni code編碼方案,每個 Unicode碼占用 2字節(jié)內(nèi)存空間,這樣,無論是中文字符還是英文字符,都是占用_2字節(jié)內(nèi)存空間。3. 假設(shè)x=13, y=4,則表達(dá)式x%y != 0的值是true,其數(shù)據(jù)類型是 布爾型。4. Java語言中,多態(tài)性主要表現(xiàn)在兩個方面:方法重載和 成員覆蓋 。5. 定義類的關(guān)鍵字是 class,定義接口的關(guān)鍵字是inteface。

7、6. 在Java語言中,通過類的定義只能實(shí)現(xiàn)單 重繼承,但通過接口的定義可以實(shí)現(xiàn)多 重繼承關(guān)系。7. 在Java中字符串包括字符串常量和字符串變量,分別由類String 和類StringBuffer來創(chuàng)建對象。8. Java源程序文件編譯后產(chǎn)生的文件稱為 class文件,其擴(kuò)展名為 java 。9. 在多線程程序設(shè)計(jì)中,若要啟動一個線程需要調(diào)用的函數(shù)是start 。10. 在Java語言中,系統(tǒng)規(guī)定:表示當(dāng)前類的構(gòu)造方法用this,表示直接父類的構(gòu)造方法用 super 。17. Java語言規(guī)定標(biāo)識符是由字母、 下劃線、數(shù)字 和 美元符號 組成的字符序列,長度不限;又規(guī)定第一個字符不能是數(shù)字,

8、并區(qū)分字母的大小寫。18. Java中實(shí)現(xiàn)多線程一般使用兩種方法,一是Thread,二是Runnable 。19. Java中變量有三要素:類型、 變量名 和 變量值 。20. Java語言中,說明或聲明數(shù)組時 內(nèi)存大小,創(chuàng)建數(shù)組時 內(nèi)存大小。21. 集合框架提供的 Map接口的實(shí)現(xiàn)類中,在Map中插入、刪除和定位元素,使用HasMap是 最好的選擇;需要按順序遍歷鍵,需選擇 ThereMap。22. Outputstream 類和Inputstream類是所有字節(jié)流輸入輸出類的父類。23. 導(dǎo)入 my.package包中的所類的命令是 import 。24. 構(gòu)造方法是一種特殊的成員方法,構(gòu)

9、造方法名與 類 相同,并且此方法 無 有 返回值。25. 圖形用戶界面的設(shè)計(jì)中有事件處理模型處理事件,在該模型中主要包括事件源、事件對象和事件監(jiān)聽者 。三、判斷題1. Java 語言具有較好的安全性和可移植性及與平臺無關(guān)等特性。 T2. Java 語言的基本數(shù)據(jù)類型有 4 種:整型、浮點(diǎn)型、字符型和布爾型。 T3. 組成 Java Application 的若干類中, 有且僅有一個主類, 只有主類中含有主方法 main 。 T4. 數(shù)據(jù)由高類型轉(zhuǎn)換到低類型時候,采用強(qiáng)制轉(zhuǎn)換,數(shù)據(jù)精度要受到損失。 T5. 子類所繼承父類的成員都可以在子類中訪問。6. 靜態(tài)方法只能處理靜態(tài)變量。 T7. 抽象方法

10、是一種只有說明而無具體實(shí)現(xiàn)的方法。8. Java 語言規(guī)定在嵌套的程序塊中不允許定義同名的成員變量。9. Throwable 類有兩個子類: Error 類和 Exception 類。前者由系統(tǒng)保留,后者供應(yīng)用程 序使用。10. 運(yùn)行 Applet 程序是使用 AppletViewer 命令運(yùn)行嵌入了字節(jié)碼文件的 html 文件, 從而 獲得運(yùn)行結(jié)果。11. 成員方法的重載和覆蓋是同一回事。12. 集合 Set 是通過鍵 - 值對的方式來存儲對象的。13. Java 語言是一種強(qiáng)類型語言,數(shù)據(jù)類型轉(zhuǎn)換有兩種:隱含轉(zhuǎn)換和強(qiáng)制轉(zhuǎn)換。14. Java 語言中,數(shù)組在靜態(tài)和動態(tài)賦值時都判越界。15.

11、Frame 容器是有邊框的容器,它也是一種獨(dú)立窗口,只能作為最外層容器。16. 死鎖的產(chǎn)生是因?yàn)槎鄠€線程間存在資源競爭。1. 組成 Java Application 的若干類中, 有且僅有一個主類, 只有主類中含有主方法 main 。( )2. 數(shù)據(jù)由高類型轉(zhuǎn)換到低類型時候,采用強(qiáng)制轉(zhuǎn)換,數(shù)據(jù)精度要受到損失。( )3. 成員方法的重載和覆蓋是同一回事。 ( )4. 抽象方法是一種只有說明而無具體實(shí)現(xiàn)的方法。( )5.Java2 的事件處理方法是采用委托事件處理模型。 ( ) 6.Throwable 類有兩個子類: Error 類和 Exception 類。前者由系統(tǒng)保留,后者供應(yīng)用程序使 用。

12、 ( )7. 運(yùn)行 Applet 程序是使用 AppletViewer 命令運(yùn)行嵌入了字節(jié)碼文件的 html 文件, 從而獲得 運(yùn)行結(jié)果。學(xué)習(xí) 好資料8. Java 語言具有較好的安全性和可移植性及與平臺無關(guān)等特性。( )9. Java 語言的基本數(shù)據(jù)類型有 4 種:整型、浮點(diǎn)型、字符型和布爾型。( )10. 子類所繼承父類的成員都可以在子類中訪問。( )11. Java 語言規(guī)定在嵌套的程序塊中不允許定義同名的成員變量。 ( )12.Java 語言采用 16 位顏色標(biāo)準(zhǔn)。 Java 的調(diào)色板保證 128 色。13. 靜態(tài)方法只能處理靜態(tài)變量。( )14. 畫布(Canvas)是一種可容納多個

13、組件的容器。()15. Java 語言是一種強(qiáng)類型語言,數(shù)據(jù)類型轉(zhuǎn)換有兩種:隱含轉(zhuǎn)換和強(qiáng)制轉(zhuǎn)換。( )16. Java 語言中,數(shù)組在靜態(tài)和動態(tài)賦值時都判越界。( )17. Frame 容器是有邊框的容器,它也是一種獨(dú)立窗口,只能作為最外層容器。()18. 集合 Set 是通過鍵 - 值對的方式來存儲對象的。19. 異常處理是在編譯時進(jìn)行的。()20. 死鎖的產(chǎn)生是因?yàn)槎鄠€線程間存在資源競爭。()四、閱讀下列程序,請寫出程序的輸出結(jié)果1.class B int b;B(int x) b = x;System. out.println("b=" + b);class A ex

14、tends B int a;A(int x, int y) super(x);a = y;System. out.println("b=" + b + ",a=" + a);public class Test public static void main(String args) A obj = new A(13, 23);答案b=13b=13,a=232.public class Test1 public static void main(String agrs) AB s = new AB("Hello!", "I l

15、ove JAVA.");System. out .println(s.toString();class AB String s1;String s2;AB(String str1, String str2) s1 = str1;s2 = str2;public String toString() return s1 + s2;答案 Hello!I love JAVA.3. public class Test public static void main(String args) int num1 = new int23;num100 = 3;num101 = 9;num102 =

16、60;num110 = 78;num111 = 79;for (int i = 0; i <= 1; i+) for (int j = 0; j < num1i.length; j+) System. out .print(num1ij + "t");System. out .println();答案3 9 6078 79 04. public class Test public static void main(String agrs) int i, s = 0;int a = 10, 20, 30, 40, 50, 60, 70, 80, 90 ;for (

17、i = 0; i < a.length; i+)if (ai % 3 = 0) s += ai;System. out .println("s=" + s);答案s=30s=90s=1805. public class Test3 public static void main(String agrs) A a = new A(2);A b = new A(3);System. out .println(a.isEqualTo(b);class A private int privateVar;public A(int _privateVar) privateVar

18、= _privateVar;boolean isEqualTo(A anotherA) if (this.privateVar = anotherA.privateVar) elsereturn false; 答案 false6. public class Test public static void main(String args) int num1 = new int23;num100 = 3; num101 = 9;num110 = 78; num111 = 79;for (int i = 0; i <= 1; i+) for (int j = 0; j < num1i.

19、length; j+)System. out .print(num1ij + "t");System. out .println();int num2 = new int 1, 2, 3 , 7, 8 , 9 ;return true;num102 = 45;for (int i = 0; i <num2.length; i+) for (int j = 0; j < num2i.length; j+)System. out .print(num2ij + "t"); System. out .println();答案3 9 4578 79

20、01 2 37 897. public class Test2 public static void main(String agrs) int i, s = 0;int a = 1, 2, 3, 4, 5, 6, 7, 8, 9 ;for (i = 0; i < a.length; i+)if (ai % 3 = 0) s += ai;System. out .println("s=" + s);答案s=3s=9s=188. class B int b;B(int x) b = x;System. out .println("b=" + b);c

21、lass A extends B int a;A(int x, int y) super(x); a = y;System. out .println("b=" + b + ", a=" + a);public class Test public static void main(String args) A obj = new A(5, 10);答案b=5b=5, a=109. public class Test4 public static void main(String agrs) try method(); catch (Exception e

22、) System. out .println("A"); finally System. out .println("B");static void method() try wrench();System. out .println("C"); catch (ArithmeticException e) System. out .println("D"); finally System. out .println("E");System. out .println("F")

23、;static void wrench() throw new NullPointerException();答案EAB五、閱讀程序,回答問題11: public class Output1 2:3:public static void main(String arge) int i=0;4:5:6:for ( char ch = 97; ch<113; ch+,i+) if( i % 8 = 0 )System.out.println(" ");7:8:9:System.out.print("t" +ch);10: (1) 程序第 5、6 行的

24、if 語句的功能是什么?(2) 程序輸出的結(jié)果有幾行? 21: import java.util.Arrays;2: public class SortArray 3: public static void main(String args) 4:String str = "size", "abs","length","class"5:Arrays.sort(str);6:for (int i=0; i<str.length; i+)7: System.out.print(stri+" "

25、);8: 9: (1)寫出程序運(yùn)行后的結(jié)果。(2)在第 4 行和 5 行之間,進(jìn)行 str0.length() 方法調(diào)用的返回結(jié)果是多少? 3abstract class SuperAbstractvoid a()abstract void b();abstract int c(int i);interface AsSupervoid x();abstract class SubAbstract extends SuperAbstract implements AsSuperpublic void b() abstract String f();public class InheritAbst

26、ract extends SubAbstractpublic void x() public int c(int i ) public Stri ng f()public static void main(String args)InheritAbstract instance=new InheritAbstract();instance.x();instance.a();instance.b();instance.c(100);System.out.println(instance.f();根據(jù)以上這段程序,回答問題:(1)哪幾個類是抽象類,寫出類名。(2)哪幾個類是非抽象類,寫出類名。(3

27、) 是否有接口,寫出接口名。4.定義類A和類B如下。class Aint a=1;double d=2.0;void show( ) System.out.println("Class A: a="+a +"td="+d);class B extends Afloat a=3.0f;String d="Java program."void show( ) super.show( );System.out.println("Class B: a="+a +"td="+d);若在應(yīng)用程序的 main

28、 方法中有以下語句:A a=new A();a.show(); 則輸出的結(jié)果如何? Class A: a=1 d=2.05寫出此程序完成的功能。public class Sum 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); 回答問題:以上程序完成什么功能? 運(yùn)行結(jié)果是: sum=5.1873775176396216寫出此程序完成的功

29、能。import java.io.*;public class ArrayCount public static void main(String args) int i, n = 10, sum = 0, count = 0;int a = new int10;for (i = 0; i < n; i+)try BufferedReader br = new BufferedReader(new InputStreamReader(System. in ); ai = Integer.parseInt (br.readLine(); catch (IOException e) for

30、(i = 0; i < n; i+) sum += ai;sum /= n;for (i = 0; i < n; i+) if (ai < sum)+count;System. out .println(count);7import java.util.*;public class Test4public static void main(String args) Set set = new TreeSet();set.add(new Integer(10);set.add(new Integer(5);set.add(new Integer(15);set.add(new

31、Integer(5);set.add(new Integer(10);System. out .println("size = " + set.size(); Iterator it = set.iterator();while (it.hasNext() System. out .print(it.next() + " ");(1)程序運(yùn)行后輸出的結(jié)果如何?size = 35 10 15(2)說明java中的集合(Set接口)和映射(Map接口)的主要區(qū)另阮8.1:import java.applet.Applet;2:import java.awt.

32、*;3:import java.awt.event.*;4:public class TestKeyListener extends Applet 5:Color clr;6:public void init() 7:addKeyListener(8:new KeyAdapter() 9:public void keyTyped( KeyEvent e ) 10:if(e.getKeyChar()='r'|e.getKeyChar()='R')11:clr=Color.red;12:else if(e.getKeyChar()='g'|e.get

33、KeyChar()='G')13:clr=Color.green;14:else if(e.getKeyChar()='b'|e.getKeyChar()='B')15:clr=Color.blue;16:else17:clr=Color.black;18:setBackground(clr);19:20:);21:22:Unicode 字符,的瀏覽器打開網(wǎng)(1)程序第 10、11 行實(shí)現(xiàn)的功能是什么?返回引發(fā)鍵盤事件的按鍵所對應(yīng)的 如果為大寫 R 或小寫 r 則讓變量 clr 等于 Color 類 red 方法。 (2)編譯該程序,并編寫嵌入該

34、程序字節(jié)碼文件的網(wǎng)頁后,通過支持java頁。如果敲擊鍵盤的 b'鍵,有什么結(jié)果?六、程序設(shè)計(jì)題1. 設(shè)計(jì)一個 Calculator 類,并完成下列的各方法的程序設(shè)計(jì)并測試:更多精品文檔學(xué)習(xí)-好資料(1) 定義add()方法,用來計(jì)算兩數(shù)(a,b)之和。(2) 定義sub()方法,用來計(jì)算兩數(shù)(a,b)之差。(3) 定義mul()方法,用來計(jì)算兩數(shù)(a,b)之積。(4) 定義div()方法,用來計(jì)算 a/b。public class kk inta, b;intadd() return(a +b);intsub() return(a -b);intmul() return(a *b);i

35、nt div() 更多精品文檔if ( b != 0)public static void main(String args) kk rect =new kk();"add=" + rect.add(); "sub=" + rect.sub(); "mul=" + rect.mul(); "div=" + rect.div();rect. a = 10; rect. b = 6;System. out.println(System. out.println(System. out.println(System. out.println(2.定義一個 ArrayList集合對象,往其中添加隨機(jī)產(chǎn)生的0-10之間的float類型數(shù)據(jù),共添加10個,并打印輸出該集合對象中每個元素的值。import java.util.ArrayList;import java.util.Iterator;學(xué)習(xí) 好資料學(xué)習(xí)-好資料pub

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論