2019年秋季北郵《Java技術(shù)》期末考試復(fù)習題

上傳人:494895****12427 文檔編號:59580099 上傳時間:2022-03-03 格式:DOCX 頁數(shù):25 大小:95.27KB
收藏 版權(quán)申訴 舉報 下載
2019年秋季北郵《Java技術(shù)》期末考試復(fù)習題_第1頁
第1頁 / 共25頁
2019年秋季北郵《Java技術(shù)》期末考試復(fù)習題_第2頁
第2頁 / 共25頁
2019年秋季北郵《Java技術(shù)》期末考試復(fù)習題_第3頁
第3頁 / 共25頁

下載文檔到電腦,查找使用更方便

20 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《2019年秋季北郵《Java技術(shù)》期末考試復(fù)習題》由會員分享,可在線閱讀,更多相關(guān)《2019年秋季北郵《Java技術(shù)》期末考試復(fù)習題(25頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、精選優(yōu)質(zhì)文檔-----傾情為你奉上 《 Java技術(shù)》課程2019年秋季期末考試復(fù)習題 《 Java技術(shù)》課程2019年春季期末考試復(fù)習題 二、考試重點(占期末考試成績 60%) 一、單項選擇題 1.計算機硬件能直接執(zhí)行的只能是( B)。 A.符號語言程序 B.機器語言程序 C.匯編語言程序 D.高級語言程序 2. Java語言屬于(C)。 A.面向過程的解釋型語言 B.面向過程的編譯型語言 C.面向?qū)ο蟮慕忉屝驼Z言 D.面向?qū)ο蟮木幾g型語言 3.根據(jù)TIOBE編程語言社區(qū)排行榜的統(tǒng)計,使用率居

2、于前三的編程語言是( A)。 A.Java、C、C++ B.Java、C#、C++ C.Java、Python、Ruby D.Objective-C、C++、Java 4.下述Java平臺中,最適于開發(fā)嵌入式系統(tǒng)應(yīng)用程序的是( C)。 A.JavaSE B.JavaEE C.JavaME D.JavaApplet 5. 下面關(guān)于Java類文件的說法錯誤的是(D)。 A.Java編譯器會為源程序中的每個類單獨生成一個類文件 B.Java類文件中存儲的代碼必須符合 JVM規(guī)范 C.Java類文件中存儲的代碼是二進制形式的代碼 D.Ja

3、va 類文件必須用 Java語言編寫得到 6. 下列關(guān)于Eclipse說法錯誤的是(A)。 A.使用Eclipse開發(fā)Java程序時,程序員編輯源程序后即可運行該程序,因此無編譯程序的過程B.Eclipse中的Workspace用于存儲工程的路徑 C.在Windows系統(tǒng)下,Eclipse程序包解壓縮后即可直接使用,無需安裝D.Eclipse是一個基于Java的、可擴展的、開放源代碼的開發(fā)平臺 7. 下列關(guān)于IDE開發(fā)環(huán)境Eclipse的說法錯誤的是(D)。A.Eclipse可以通過插件(plugin)的方式擴展其功能 B.Eclipse聯(lián)盟是由IBM公司捐資組建

4、的 C.Eclipse使用了SWT圖形界面技術(shù) D.Eclipse 的運行不需要有 JRE的支持 8. 關(guān)于Eclipse的視景說法錯誤的是(C)。 A. 每個視景都定義了工作臺中各個視圖的初始設(shè)置和布局 B. 一個工作臺窗口包含多個獨立的視景,但同一時刻只有一個視景是對用戶可見的 C. 視景的布局是可以改變的,但改變多次后無法再恢復(fù)到初始設(shè)置 D. 每個視景都有自己的視圖和編輯器,用戶可以在各個視景間切換 9.在Java中,由Java編譯器自動導入,而無需在程序中用 import導入的包是( A)。A.java.lang B.java.a

5、wt C.java.io D.java.applet 10.在Java中,用package語句聲明一個包時,該包的層次結(jié)構(gòu)必須是( B)。 A.與文件的結(jié)構(gòu)相同B.與文件目錄的層次相同C.與文件類型相同D.與文件大小相同11.下面不是包的用途的是(A)。 A.規(guī)定一組類的對外界面 B.方便類的查找和使用 C.防止命名沖突 D.訪問控制 12. Java中用于描述對象的狀態(tài)的語法成分是(B)。A.修飾符B.變量C.方法D.語句 13. Java中用于描述對象的行為的語法成分是(C)。 A.常量 B.變量 C.方法 D.語句 14. 應(yīng)用程序的main方法

6、中有以下語句: Strings1=newString("abc"); 專心---專注---專業(yè) 1/5 《Java技術(shù)》課程2019年秋季期末考試復(fù)習題 Strings2=newString("abc"); booleanb1=s1.equals(s2); booleanb2=(s1==s2); System.out.print(b1+" "+b2); 則輸出的結(jié)果是( A)。 A.truefalse B.falsetrue C.truetrue D.falsefalse 15.應(yīng)用程序的 main方法中有以下語句: Strin

7、gs="12"; s=s+34; System.out.println(s); 則下述說法正 確的是(C)。 A. 程序有錯誤,不能通過編譯 B. 程序沒有錯誤,運行輸出結(jié)果為:46 C. 程序沒有錯誤,運行輸出結(jié)果為:1234 D. 程序沒有錯誤,運行輸出結(jié)果為:1216.設(shè)有如下類定義 classFruit{//水果類intgrams;// 克數(shù)(質(zhì)量)Fruit(intgrams){this.grams=grams;}int totalCalories(){//卡路里(熱量) returngrams*10; }}則創(chuàng)建一個Fruit類的對象實體

8、的語句是(D)。 A.Fruitf; B.Fruit(30); C.newFruit(); D.newFruit(30); 17.設(shè)有如下程序段 classTest{privateintm;publicstaticvoidfun(){//somecode 要使成員?變量}}m能夠被 方法fun()直接訪問,則下面選項正確的是( C)。 A.將privateintm 改成protectedintm B.將privateintm 改成publicintm C.將privateintm 改成staticintm

9、D.將privateintm 改成intm 18.設(shè)有如下類定義 classA{privateinti; protectedintj;} classBextendsA{ privateintk;protectedintm;} 則下面敘述最為準確的是( A)。A.類B的對象包含數(shù) 據(jù)域i,j,k,m B.類B的對象包含數(shù)據(jù)域 j,k,m C.類B的對象包含數(shù)據(jù)域 k,m D.類B的對象包含數(shù)據(jù)域 m 19.下述關(guān)于重載和覆蓋的敘述正確的是( A)。 A. 子類方法覆蓋父類方法時,子類方法不能比父類方法更“私有” B.

10、靜態(tài)方法不能被重載C.私有方法不能被重載 D. 重載方法不能拋出父類中的不可檢測異常 20. 下述關(guān)于構(gòu)造方法的敘述正確的是(B)。 A.構(gòu)造方法不能被重載 B.構(gòu)造方法不能被覆蓋 C. 構(gòu)造方法可以返回一個基本數(shù)據(jù)類型的數(shù)據(jù)或者一個對象的引用 D. 構(gòu)造方法的代碼在執(zhí)行時,先執(zhí)行子類中的代碼,然后再向上執(zhí)行它祖先中的代碼21.下面敘述正確的是(C)。 A.語句“XextendsY ”是正確的,當且僅當 X是一個類,Y是一個接口 B.語句“XextendsY ”是正確的,當且僅當 X是一個接口,Y是一個類 C.語句“XextendsY ”是正確

11、的,當且僅當 X和Y都是類,或都是接口 D.語句“XextendsY ”是正確的,對于X和Y是類和接口的任意組合 22. 以下接口定義正確的是(D)。 A.interfaceB{voidprint(){};} B.abstractinterfaceB{voidprint();} C.abstractinterfaceBextendsA1,A2{//A1,A2 為已定義接口 abstractvoidprint(){};} D. interfaceB{voidprint();}23.給定下面程序段 publicclassNavel{ privateint

12、size=7; privatestaticintlength=3; 2/5 《Java技術(shù)》課程2019年秋季期末考試復(fù)習題 publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubnewNavel().go(); } voidgo(){ intsize=5; System.out.println(newGazer().adder()); } classGazer{ intadder(){returnsize*length; }}}下面選項正確的

13、是(B)。 A.輸出15 B.輸出21 C.拋出一個運行時異常 D.編譯錯誤 24.給定下面程序段 publicclassTest{ publicstaticvoidaMethod()throwsException{ try{ thrownewException(); }finally{ System.out.println("finally"); }} publicstaticvoidmain(Stringargs[]){ try{ aMethod(); }catch(Exceptione){ System.out.print

14、ln("exception"); } System.out.println("finished");}} 下面選項正確的是( C)。 A.通過編譯,程序運行結(jié)果是 finally B.通過編譯,程序運行結(jié)果是 exception finished C.通過編譯,程序運行結(jié)果是 finallyexceptionfinished D.編譯錯誤,不能通過編譯 25. 下面關(guān)于異常的陳述正確的是(A)。 A.語句“catch(Xx)”能夠捕獲類X及其子類對象的異常B.Error類是一個運行時異常 C.任何可能拋出一個 Error類對象的語句必須被封裝到一

15、個 try語句塊中 D.任何可能拋出一個 Exception 類對象的語句必須被封裝到一個 try語句塊中 26. 下面能夠創(chuàng)建一個DataOutputStream對象的語句是(D)。 A.NewDataOutputStream("out.txt"); B.NewDataOutputStream(newFile("out.txt")); C.NewDataOutputStream(newFileWriter("out.txt")); D.NewDataOutputStream(newFileOutputStream("out.txt")); 27. 設(shè)

16、在Windows系統(tǒng)上有文件d:\temp.txt,下述不能創(chuàng)建一個File類實例的語句是(A)。 A.newFile("d:\temp.txt"); B.newFile("d:\\temp.txt"); C.newFile("d:/temp.txt"); D.newFile("d://temp.txt"); 28.下面可以從一個輸入流中讀取一行內(nèi)容的方法是( B)。 A.next() B.nextLine() C.nextInt() D.nextDouble() 29.給定下面程序段 publicclassTry6implementsRunnable{

17、 publicstaticvoidmain(String[]args){ Threadt=newThread(this); t.start(); } publicvoidrun(){ System.out.println("test"); } }下面選項正確的是( A)。 A.程序不能編譯通過,因為靜態(tài)方法中不能使用 this 引用 B.程序能夠通過編譯,但是運行的時候沒有任何輸出,因為沒有調(diào)用 run()方法 3/5 《 Java技術(shù)》課程2019年秋季期末考試復(fù)習題 C. 程序能夠編譯和運行,并且在控制臺窗口顯示

18、字符串test D. 上述都不對 30. 當你使用語句Thread=newThread(object) 創(chuàng)建線程對象時, object必須滿足的條件是( D)。 A.object是Thread類的實例 B.object 是JFrame 類的實例 C.object是Applet類的實例 D.object 是Runnable接口的實例 31. 事件監(jiān)聽接口中的方法的返回值是( C)。 A.int B.String C.void D.Object 32. 下面關(guān)于布局管理的敘述正確的是( D)。

19、 A. 順序布局能夠用于放置水平大小隨容器大小變化而變化的組件 B. 網(wǎng)格布局能夠用于放置大小為常數(shù)定值的組件 C. 邊界布局能夠用于放置大小為常數(shù)定值的組件 D. 網(wǎng)格包布局能夠提供網(wǎng)格布局類似的布局,并且允許個別的行和列具有自己特定的大小 33.當ActionEvent 事件發(fā)生時,能夠取得事件源對象的方法是( B)。 A.publicClassgetClass() B.publicObjectgetSource() C.publicComponentgetSource() D.publicComponentgetTarget() 3

20、4.用鼠標單擊 JFrame窗口右上角的關(guān)閉按鈕,發(fā)生的事件是( B)。 A.ItemEvent B.WindowEvent C.MouseMotionEvent D.ComponentEvent 35. 用來處理監(jiān)聽器的組件是(B)。 A.事件源對象 B.監(jiān)聽器對象 C.適配器對象 D.代理器對象 36. 下面關(guān)于JDBC的陳述錯誤的是(D)。A.JDBC本身是個商標名 B.JDBC由一組用Java類和接口組成的 C.JDBC 可以使程序員能夠用純JavaAPI來編寫數(shù)據(jù)庫應(yīng)用程序 D.JDBC 驅(qū)動程序必須由 ORACLE 公司開發(fā)

21、 37.JDBC接口Statement 中定義的execute()方法的返回類型是( C)。 A.ResultSet B.int C.boolean D.受影響的記錄數(shù)量 38.JDBC接口Statement 中定義的executeQuery() 方法的返回類型是( A)。 A.ResultSet B.int C.boolean D.受影響的記錄數(shù)量 39.JDBC接口Statement 中定義的executeUpdate() 方法的返回類型是( B)。 A.ResultSet B.int C.boolean

22、 .受影響的記錄數(shù)量 40.獲取ResutlSet 對象rst的第一行數(shù)據(jù),以下正確的是( C)。 A.rst.hashNext(); B.rst.next(); C.rst.first(); D.rst.nextRow(); 第一部分:多項選擇題 題1. 屬于Java運行時環(huán)境的組成部件的是( CD)。 A.Java編程語言 B.Java類文件 C.JavaAPI D.Java虛擬機 題2. 下面哪些關(guān)鍵字能用來控制對類成員的訪問( ABC)? A.public B.p

23、rotected C.private D.default 題3. 類B是一個抽象類,類C是類B的非抽象子類,下列創(chuàng)建對象 x1的語句中正確的是(BC )。 A.Bx1=newB(); B.Bx1=newC(); C.Cx1=newC(); D.Cx1=newB(); 題4. 下面關(guān)于Java中異常處理try塊的說法正確的是(AC)。 A.try塊后通常應(yīng)有一個 catch塊,用來處理try塊中拋出的異常 4/5 《Java技術(shù)》課程2019年秋季期末考試復(fù)習題 B.catch塊后必須有final

24、ly塊 C.可能拋出異常的方法調(diào)用應(yīng)放在 try塊中 D.對拋出的異常的處理必須放在 try塊中 題5.關(guān)于BufferedReader類的readLine()方法,以下說法正確的有( ACD )。 A. 方法readLine()每次讀取一行數(shù)據(jù) B. 方法readLine()每次讀取一個字節(jié) C.該方法可能拋出 IOException異常,調(diào)用該方法時通常應(yīng)將它放到 try塊中,并通過catch塊處理異常 D.如果讀到流的末尾,該方法返回的結(jié)果為 null 填空題 1. 程序設(shè)計語言按思維模式可以分為__面向過程的

25、語言__和__面向?qū)ο蟮恼Z言__兩類。 2. Java的三個版本是JavaSE、JavaEE 和JavaME。 3. 完整的Java體系結(jié)構(gòu)包括四個組件,分別是 Java編程語言 、Java類文件格式 、Java應(yīng)用程序編程接口 和 Java虛擬機。 4. Java運行時環(huán)境是由_Java虛擬機_和_核心類 組合形成的。 5. 在Java類文件中存儲的二進制代碼稱為 _字節(jié)碼 ,它們是JVM的指令。 6. 在主機操作系統(tǒng)上由軟件實現(xiàn)的 Java虛擬機實際上是用本地(如C/C++等) 語言編寫的程序。 7. Java虛擬機主

26、要包括兩個模塊,一個是 類裝載器 ,另一個是執(zhí)行引擎。 8. JDK提供了開發(fā)Java程序所需的各種工具(諸如Java編譯器、Java虛擬機等程序)和資源,同時也提供了運行 Java程序的Java運行時環(huán)境 。 9. 環(huán)境變量相當于給系統(tǒng)或用戶應(yīng)用程序設(shè)置的一些參數(shù),具體起什么作用和具體程序相關(guān)。 10. 開發(fā)一個完整的Java應(yīng)用程序系統(tǒng),為了便于管理,可能需要將一系列的程序文件、資源文件和其它相關(guān)文 件 放到一個Java項目中。 11. Eclipse根據(jù)任務(wù)的不同把視圖和編輯器預(yù)先劃分為不同的類別,預(yù)設(shè)好視圖的排列方式,并把每一個類別稱為一個視景

27、(或透視圖)。 12. 為管理和使用大量的類和接口,Java把一組類和接口封裝在一個包內(nèi)。 13. 對象是程序的基本組成實體,類是創(chuàng)建對象的 模版 。 14. Java 源程序中的類可以分為兩種,分別是系統(tǒng)類和用戶自己定義類 。 15. 編譯程序的時候會自動導入到程序中的系統(tǒng)包是 java.lang。 16. 把基本數(shù)據(jù)類型包裝成類的好處是可以提供基本數(shù)據(jù)類型的信息,還可以使用類的方法對數(shù)據(jù)進行操作 。 17. 在Java中,int類型的包裝類是 Integer,char類型的包裝類是 Character。 1

28、8. Integer類的parseInt() 方法的功能是把一個字符串轉(zhuǎn)換為一個整型數(shù)據(jù) 。 19. Java 把數(shù)據(jù)輸出到控制臺是使用標準輸出流 或System.out 完成的。 20. Scanner類是在java.util 包中定義的。 21. 創(chuàng)建一個連接到標準輸入流對象 System.in的Scanner 對象的語句是ScannermyScanner=new Scanner(System.in);。 22. 設(shè)myS是一個Scanner 類的實例,則語句“intx=myS.nextI

29、nt(); ”的作用是讀取一個整數(shù),然后把這個整數(shù)賦 給變量x。 23. Java 提供的專門用于格式化輸出數(shù)據(jù)的方法是 System.out.printf() 。 24. Java 提供的用于處理日期和時間信息的系統(tǒng)類是 java.util.Date 。 25. 字符串常量是用雙引號括起來的字符序列 。 26. Java用于處理處理字符串的類有兩個,分別是 String類和StringBuffer 類。 5/5 《Java技術(shù)》課程2019年秋季期末考試復(fù)習題 27

30、. Java的編譯器會為每個字符串常量生成一個 String類的實例。 28. 取得字符串的長度的方法是調(diào)用字符串對象的 length()方法。 29. 在Java中,每當創(chuàng)建一個對象時,系統(tǒng)都會從它管理的內(nèi)存中分配一定的空間給這個對象。我們把創(chuàng)建好的 對象叫做對象實體,而這個對象實體的 “標識”叫做對象的引用 。 30. 構(gòu)造方法有兩個作用,一個作用是提供要實例化的類的類名,另一個作用是把新創(chuàng)建的對象初始化 。 31. new關(guān)鍵字用于創(chuàng)建對象,new關(guān)鍵字被執(zhí)行之后會返回新創(chuàng)建對象的 引用 。 32. 在聲明成員變量的時候,用關(guān)鍵字 sta

31、tic 修飾的變量是類變量,類變量也稱為 靜態(tài) 變量。 33. 在聲明成員變量的時候,沒有被關(guān)鍵字 static 修飾的變量是 實例變量。 34. 在聲明成員方法的時候,用關(guān)鍵字 static 修飾的方法是類方法,類方法也稱為 靜態(tài) 方法。 35. 在聲明成員方法的時候,沒有被關(guān)鍵字 static 修飾的方法是 實例方法。 36. 調(diào)用類方法有兩種情況,一種是通過 類名 調(diào)用類方法,另一種是通過 對象名 調(diào)用類方法。 37. 在面向?qū)ο蟮某绦蛑校椒ㄊ怯糜诙x對象的某個特定 功能 的代碼段。

32、 38. 方法名和方法的參數(shù)類型稱為方法的 簽名 。 39. 調(diào)用方法的語句格式是reference.method(arguments) 。 40. 編譯源程序時,編譯器會為方法添加一個隱式參數(shù),用來存儲運行時刻傳來的 當前對象的引用 。 41. 面向?qū)ο蠹夹g(shù)有三個基本特性,分別是 封裝 、繼承 和多態(tài) 。 42. 包含在對象屬性中的數(shù)據(jù)值的集合通常稱為對象的 狀態(tài) 。 43. 對象除了保存數(shù)據(jù)之外,還提供若干操作數(shù)據(jù)的方法,用以描述的對象的行為 。

33、 44. 封裝有兩方面的意思:一個方面是對象封裝了 功能的內(nèi)容實現(xiàn)機制,另一個方面是對象封裝了它持有的數(shù)據(jù) 。 45. 在Java中,通過在類定義里面定義 屬性和方法 ,強制實現(xiàn)對數(shù)據(jù)和功能的封裝。 46. Java程序中的所有類都由系統(tǒng)類Object直接繼承或間接繼承得到的。 47.Java中的多態(tài)是指 一個程序中同名的不同方法共存 的情況。 48. Java中的多態(tài)分為編譯時多態(tài)和運行時多態(tài)兩類。 49. 使用接口實際上要做兩件事:第一是聲明接口(定義接口),第二是在類中實現(xiàn)接口 。 50.

34、 回調(diào)是一種常見的程序設(shè)計模式,這種模式在 Java中通常是用接口 來實現(xiàn)。 51. 所謂異常,就是程序的運行時錯誤 。 52. “異常”產(chǎn)生時,意味著在當前環(huán)境下無法獲得必要的信息來解決問題, 我們所能做的就是從當前環(huán)境中跳出, 并且把問題提交給上一級別的環(huán)境。 53. 我們把生成異常對象并把它交給運行時系統(tǒng)的異常處理機制的過程稱為 拋出異常。 54. 運行時系統(tǒng)的異常處理機制在方法的調(diào)用棧中查找,從生成異常的方法開始回溯,直到找到包含相應(yīng)異常處 理 的方法為止,這個過程稱為 捕獲異常 。 55. 編譯

35、器要求我們編寫的程序必須對可檢測的異常進行處理,否則 不能通過編譯。 56. 異常通常由以下兩種情況引起,一種是 程序執(zhí)行了不合法的動作 ,另一種是通過執(zhí)行 throw語句由程序顯 式拋出。 57. 按照數(shù)據(jù)的傳輸方向,流可以分為 輸入流和輸出流 兩類。 58. 按照數(shù)據(jù)的格式,流可以分為字節(jié)流和字符流兩類。 59. 系統(tǒng)類FileInputStream 和FileOutputStream 用于以字節(jié)方式處理文件的輸入和輸出,稱為文件輸入 /輸出流。 60. 系統(tǒng)類FileReader 和FileWri

36、ter 用于以字符方式處理文件的輸入和輸出,稱為文件讀寫器。 61. 系統(tǒng)類BufferedReader 和BufferedWriter 分別稱為緩沖讀取器和緩沖寫入器。 62. 使用緩沖流的好處是可以減少系統(tǒng)和外部設(shè)備交換數(shù)據(jù)的次數(shù) 。 63. 系統(tǒng)類DataInputStream 和DataOutputStream 稱為數(shù)據(jù)輸入/輸出流,它們在輸入輸出數(shù) 據(jù) 的同時能對流中的數(shù)據(jù)進行變換處理。 64. 提供操作系統(tǒng)目錄管理功能的文件類是 File 。 65. 用于文件的隨機讀寫操作的

37、文件類是 RandomAccessFile 。 6/5 《 Java技術(shù)》課程2019年秋季期末考試復(fù)習題 66. 通俗地講,線程就是一個代碼執(zhí)行流。 67. Java程序是從一個眾所周知的入口點開始執(zhí)行的,即是從 main()方法的第一條語句開始執(zhí)行的。 68. 當Java程序啟動時,系統(tǒng)就為它創(chuàng)建好一個線程,用這個線程執(zhí)行 main()方法中的代碼序列。這個系統(tǒng) 創(chuàng)建好的線程叫主線程 。 69. JVM創(chuàng)建的線程稱為系統(tǒng)線程,我們自己在程序中用代碼創(chuàng)建的線程稱為用戶線程 。

38、 70. JavaAPI提供創(chuàng)建線程的系統(tǒng)類是 Thread ,它的對象就是一個線程。 71. 線程類的獲取當前線程對象引用的方法是 currentThread() ,獲取當前線程名字的方法是getName() 。 72. 在Java中,線程被表示為Java.lang.Thread 類的一個實例。 73. 一個線程要完成一個應(yīng)用任務(wù),為了完成該應(yīng)用任務(wù)而編寫的代碼要放到 run() 方法中。 74. 創(chuàng)建好線程對象之后并不意味著這個線程就會被處理機( JMV)運行,還需要調(diào)用線程對象的start() 方 法

39、啟動線程。 75. 我們稱實現(xiàn)了Runnable接口的類為線程化的類,稱實現(xiàn)了該接口的類的實例為可運行的對象 。 76. 從實現(xiàn)了Runnable接口的對象創(chuàng)建線程對象的方法是,建立一個單獨的 Thread對象,并把可運行對象傳 遞給專門的Thread類的構(gòu)造 方法。 77. 線程生命周期共有五個狀態(tài),分別是新建狀態(tài) 、就緒狀態(tài)、運行狀態(tài)、阻塞狀態(tài)、死亡狀態(tài)。 78. Java的線程調(diào)度策略采用搶占 式調(diào)度。 79. 使用Swing編寫程序的圖形界面要引入

40、兩個程序包,其中包含 Swing 的基本類的程序包是 java.swing , 包 java.awt.event。 含與處理事件相關(guān)的接口和類的程序包是 80. 使用布局管理器要引入java.awt包。 81. 事件監(jiān)聽者必須實現(xiàn)與事件類型相對應(yīng)的事件監(jiān)聽接口,它才具有處理那類事件的能力。 82. Java有三種窗口,分別是 Applet窗口、框架窗口(JFrame)和無邊框的窗口(JWindow)。 83. 設(shè)mw是一個JFrame 窗口,取得 mw的內(nèi)容面板的語句是mw.getContentPa

41、ne() 。 84. 要獲取事件 e的命令字符串,從而知道是哪一個組件激發(fā)的事件,則應(yīng)該使用的代碼是 e.getActionCommand() 。 85. 面板有兩種,分別是普通面板 (JPanel)和滾動面(JScrollPane) 。 86. 布局管理器是實現(xiàn)了LayoutManager 接口的類。 87. 小應(yīng)用程序和面板默認的布局管理器是 FlowLayout 。 88. JWindow、JFrame和JDialog默認的布局管理器是BorderLayout 。

42、 89. 空布局就是把一個容器的布局管理器設(shè)置為 null 布局。 90. 當把一個容器的布局管理器設(shè)置為 null 布局的時候,可以使用setBounds() 方法手工設(shè)置組件本身的大 小和組件在容器中的位置。 91. 菜單分為下拉式菜單和彈出式菜單 兩種。 92. 處理菜單項事件的接口是ActionListener,要實現(xiàn)的接口方法是actionPerformed(),獲得事件源的方法是getSource()。 93. 在Swing中,有兩個對話框類,一個是JDialog類,它提供構(gòu)造并管理

43、通用對話框功能;另一個是 94. JOptionPane類,它提供構(gòu)造常見對話框功能。 滾動條對象的事件處理事件類型是 AdjustmentEvents ,要實現(xiàn)的事件監(jiān)聽接口的方法是 adjustmentValueChanaged(),注冊事件監(jiān)聽器的方法是 addAdjustmentListener() ,獲取事件源對象的 方法是getAdjustable() 。 95. Java處理鼠標事件提供了兩個接口,分別是 MouseListener 接口 和MouseMotionListener

44、接口 。 96. Java技術(shù)中,應(yīng)用程序使用JDBC訪問數(shù)據(jù)庫。其中,JDBCAPI和JDBC驅(qū)動程序 協(xié)同實現(xiàn) Java程序?qū)?shù)據(jù)庫的訪問功能。 97. DriverManage類的getConnection() 方法用于建立數(shù)據(jù)庫連接。 98. java.sql 包中用于處理特定數(shù)據(jù)庫連接的類是 Connection 類 。 99. java.sql 包中用于在指定的連接中處理 SQL語句的類是Statement 類。 100.java.sql 包中用于管

45、理查詢結(jié)果集的類是 ResultSet類 。 三、判斷題 1. 程序設(shè)計語言按思維模式可以分為編譯執(zhí)行語言和解釋執(zhí)行語言兩類。 ( )B 7/5 《Java技術(shù)》課程2019年秋季期末考試復(fù)習題 A.正確 B.錯誤 2. 在主機操作系統(tǒng)上由軟件實現(xiàn)的 Java虛擬機實際上是用本地語言(如 C/C++等)編寫的程序。( )A A.正確 B.錯誤 3. Eclipse聯(lián)盟是由Sun公司捐資組建的。()B A.正確 B.錯誤 4. Eclipse根據(jù)任務(wù)的不同把視圖和編輯器預(yù)先劃分為不同的類別,預(yù)

46、設(shè)好視圖的排列方式,并把每一個類別稱為一個視景。()A A.正確 B.錯誤 5. 為管理和使用大量的類和接口, Java把一組類和接口封裝在一個包內(nèi)。 ()A A.正確 B.錯誤 6. 把基本數(shù)據(jù)類型包裝成類的好處是可以提供基本數(shù)據(jù)類型的信息,還可以使用類的方法對數(shù)據(jù)進行操作。 (A ) A.正確 B.錯誤 7. 在聲明成員變量的時候,用關(guān)鍵字class修飾的變量是類變量。()B A.正確 B.錯誤 8. new運算符用于創(chuàng)建對象, new運算符被執(zhí)行之后會返回新創(chuàng)建對象的內(nèi)存地址。

47、( )B A.正確 B.錯誤 9. Java中的多態(tài)是指一個程序中同名的不同方法共存的情況。 ()A A.正確 B.錯誤 10. Java中的多態(tài)是指用一個類可以創(chuàng)建功能不同的對象。()B A.正確 B.錯誤 11.使用接口實際上要做兩件事:第一是聲明接口,第二是在類中實現(xiàn)接口。 ( )A A.正確 12. Java使用接口實現(xiàn)“回調(diào)”程序設(shè)計模式。( )A A. 正確 B.錯誤 13. J

48、ava程序運行時出現(xiàn)的異常通常是由計算機硬件錯誤引起的。 ( )B A. 正確 B.錯誤 14. 我們把生成異常對象并把它交給運行時系統(tǒng)的異常處理機制的過程稱為捕獲異常。 ( )B A. 正確 B.錯誤 15. 按照數(shù)據(jù)的傳輸方向,流可以分為字節(jié)流和字符流兩類。 ( )B A. 正確 B.錯誤 16. 用于文件的隨機讀寫操作的文件類是 File。()B A. 正確 B.錯誤 1

49、7. 當Java程序啟動時,系統(tǒng)就為它創(chuàng)建好一個線程,用這個線程執(zhí)行 main() 方法中的代碼序列。這個系統(tǒng) 創(chuàng)建好的線程叫主線程。()A A.正確 B.錯誤 18. 線程要完成一個應(yīng)用任務(wù),為了完成該應(yīng)用任務(wù)而編寫的代碼要放到 start()方法中。( )B A. 正確 B.錯誤 19. 小應(yīng)用程序和面板默認的布局管理器都是 FlowLayout。()A A. 正確 B.錯誤 20. 要獲取事件e的命令字符

50、串從而知道是哪一個組件激發(fā)的事件, 則應(yīng)使用的代碼是e.getActionCommand() 。(A) A. 正確 B.錯誤 第二部分:簡答題 8/5 《Java技術(shù)》課程2019年秋季期末考試復(fù)習題 題1.什么是包?它的主要作用是什么? 答案:包是 Java提供的一種組織類的機制,有時也稱為類庫。這種機制功能相似或相關(guān)的類或接口組織在同 一個包中, 方便類的查找和使用。 Java使用包(package)這種機制是為了防止命名沖突,訪問控制,提供搜索和 定位類(class)、接口、枚舉

51、(enumerations)和注釋(annotation)等 題2.類方法和實例方法有哪些不同? 答:答:在聲明成員方法的時候,用關(guān)鍵字 static修飾的方法就是類方法,沒有被關(guān)鍵 字 static修飾的方法就是實例方法。類方法也稱為靜態(tài)方法。類方法和實例方法的區(qū)別在于類方法不針對特定的對象,所以在沒有創(chuàng)建對象之前可以執(zhí)行,而且在類方法中只能訪問類變量和類方法,而不能訪問實例變量和實例方法。實例方法則只能針對特定的對象執(zhí)行,因此,如果任何對象都不存在,則也就沒有可以執(zhí)行的實例方法。 題 3.什么是接口?它的作用是什么? 答案:在Java 中,接口不是類,而

52、是一組抽象方法和常量的集合,用來描述類應(yīng)該提供什么樣 的功能。在接口中定 義的方法僅僅給出方法名稱、參數(shù)列表、返回值類型等信息的說明,并不給出方 法體的具體代碼,即沒有給出方法 功能的具體實現(xiàn)。在程序中定義了一個接口以后,就可以聲明某些 類實現(xiàn)了這個接口,在實現(xiàn)了該接口的類中再給 出接口的方法的功能代碼。這相當于用接口規(guī)范了實 現(xiàn)接口的那些類都必須以特定的形式提供一組特定的功能。反 過來,實現(xiàn)某個接口的類必須提供該接 口規(guī)定的功能,并且要遵從接口中定義的方法的格式約定。 題4.什么是線程?使用多線程有哪些好處?又會帶來哪些問題

53、? 1)多線 答案:通俗地講,線程是一個代碼執(zhí)行流。 使用多線程的好處是:( 程為多個代碼執(zhí)行流并發(fā)執(zhí)行提供了可能。 (2)多線程程序比多進程程序降低 了資 源占用要求。使用多線程也會對系統(tǒng)產(chǎn)生一些不利影響: (1)線程需要占用內(nèi)存, 線程越多,內(nèi)存占用越多。(2)線程過多, 會消耗大量CPU 時間來跟蹤線程。(3) 必須考慮多線程同時訪問共享資源的問題,如果沒有協(xié)調(diào)好,就會產(chǎn)生令人 意想不到 的問題,例如死鎖和資源競爭等。( 4)因為同一個任務(wù)的所有線程都共享相同的地 址空間,并共享任務(wù)的 全局變量,所以程序也必須考慮

54、多線程同時訪問的全局變量問 題 1. 編譯型語言和解釋型語言有什么不同? Java程序執(zhí)行前需要用編譯器編譯,但為什么卻說 Java是解釋型 語言呢? 答案:編譯型語言在程序執(zhí)行之前,有一個單獨的編譯過程,將程序翻譯成機器語言,以后執(zhí)行這個程序的時候就不用再進行翻譯了。解釋型語言是在運行的時候?qū)⒊绦蚍g成機器語言,所以運行速度相對于編譯型 語言要慢。C/C++ 等都是編譯型語言,而 Java、C#等都是解釋型語言。雖然 Java 程序在運行之前也 有一個編譯過程,但是并不是將程序編譯成機器語言,而是將它編譯成字節(jié)碼(可以理解為一個中間語言)。

55、 在運行的時候,由 JVM將字節(jié)碼再翻譯成機器語言。 C/C++編譯和鏈接后,可形成獨立的可執(zhí)行文件,而 Java、C#等編譯后只得到中間形式的二進制文件, 它必須由專用的解釋器換成本地機器代碼后才能執(zhí)行。 此外,像JavaScript、VBScript、PHP、PERL等腳本語言一般也都由相應(yīng)的腳本引擎來解釋執(zhí)行 2. 什么是Java虛擬機?它的主要功能是什么?答: JVM是在一臺計算機上由軟件模擬,也可用硬件實現(xiàn)的假想的計算機,它定義了指令集(相當于中央處理器 CPU)、寄存器、類文件結(jié)構(gòu)棧、垃圾收集堆、內(nèi)存區(qū)域等。 JVM是執(zhí)行Java程序的引擎

56、。 Java程序編譯后得到的二進制形式的字節(jié)碼實際上就是 JVM指令。 3. 什么是包?它的主要作用是什么? 答:包是Java提供的一種組織類的機制,有時也稱為類庫。這種機制功能相似或相關(guān)的類或接口組織在同一個包中,方便類的查找和使用。 Java使用包(package)這種機制是為了防止命名沖突,訪問控制,提供搜索和定位類( class)、接口、枚舉 (enumerations)和注釋(annotation)等。 9/5 《Java技術(shù)》課程2019年秋季期末考試復(fù)習題 4. 類變量和實例變量有哪些不同? 答: 在定義成員變量

57、時,如果用 static 修飾符修飾,則該變量是類變量(也稱“靜態(tài)變量”),否則是實例 變量。 類變量不屬于類的任何一個具體對象。它保存在類的內(nèi)存區(qū)域的公共存儲單元。類的任何一個對象對類變量 的存取都是對同一個內(nèi)存單元進行操作。 與類變量相對,實例變量屬于類的某個具體的對象。它在類的每個對象 的內(nèi)存區(qū)域中都保存一份。類的任何一 個對象對實例變量的存取都是對自己內(nèi)存區(qū)域內(nèi)保存的實例變量的副本進行 操作。 5.什么是內(nèi)部類?使用內(nèi)部類有什么好處? 答:Java允許將一個類的定義放在另一個類的內(nèi)部。定義在另一個類內(nèi)部的類就是內(nèi)部類。但內(nèi)部類是一種編譯器

58、現(xiàn)象,與虛擬機無關(guān)。當使用內(nèi)部類時,編譯器會從外部類中把內(nèi)嵌的類分離出來并調(diào)整編譯結(jié)果。內(nèi)部類允許我們把一些邏輯相關(guān)的類組織在一起,并控制在內(nèi)部的類的訪問特性。內(nèi)部類的對象持有一個隱式引用,它引用了實例化該內(nèi)部對象的外圍類對象。通過這個引用,可以訪問外圍類對象的全部狀態(tài)。 5.什么是多態(tài)?Java的編譯時多態(tài)和運行時多態(tài)有什么區(qū)別? 答:Java中的多態(tài)就是指一個程序中同名的不同方法共存的情況。分為編譯時多態(tài)和運行時多態(tài)兩類。 方法 重載可以實現(xiàn)Java的編譯時多態(tài)。它是在相同類內(nèi),定義名稱相同,但參數(shù)個數(shù)或參數(shù)類型不同的方法。 編 譯器會根據(jù)實參的個數(shù)和類型,確定

59、調(diào)用哪個方法。所謂編譯時多態(tài),是指程序會根據(jù)參數(shù)的不同來調(diào)用相應(yīng) 的方法。具體調(diào)用哪個被重載的方法,是由編譯器在編譯階段決定的。所以編譯時多態(tài)也叫做靜態(tài)多態(tài)性。 方法覆蓋可以實現(xiàn)Java的運行時多態(tài)。它是在子類當中,定義名稱、參數(shù)個數(shù)與類型均與父類相同的方法, 用以改寫父類方法的功能。運行時多態(tài)是一種在運行時,而不是在編譯時調(diào)用覆蓋方法的一種機制。對于覆蓋 的方法,Java運行時系統(tǒng)根據(jù)調(diào)用該方法的實例的類型,來決定選擇哪個方法調(diào)用。 6. 什么是接口?它的作用是什么? 答:在Java中,接口不是類,而是一組抽象方法和常量的集合,用來描述類應(yīng)該提

60、供什么樣的功能。在接口中定義的方法僅僅給出方法名稱、參數(shù)列表、返回值類型等信息的說明,并不給出方法體的具體代碼,即沒有給出方法功能的具體實現(xiàn)。在程序中定義了一個接口以后,就可以聲明某些類實現(xiàn)了這個接口,在實現(xiàn)了該接口的類中再給出接口的方法的功能代碼。這相當于用接口規(guī)范了實現(xiàn)接口的那些類都必須以特定的形式提供一組特定的功能。反過來,實現(xiàn)某個接口的類必須提供該接口規(guī)定的功能,并且要遵從接口中定義的方法的格式約定。 7. 什么是異常?Java處理異常的方法是什么? 答: 所謂異常,就是程序的運行時錯誤。 Java通過面向?qū)ο蟮姆椒▉硖幚懋惓!T谝粋€方法的運行過程中,如果

61、 發(fā)生了一個異常,則 Java虛擬機會如 同創(chuàng)建其它對象一樣,使用 new在堆上創(chuàng)建異常對象。然后,當前的執(zhí) 行流程被終止,并且從當前環(huán)境中彈出異 常對象的引用。此時, Java的異常處理機制接管程序,并開始尋找 一個恰當?shù)牡牡胤絹砝^續(xù)執(zhí)行程序。這個恰當 的地方就是“異常處理程序”,它的任務(wù)是將程序從錯誤狀態(tài)中恢 復(fù)或者做一些簡單地處理后結(jié)束程序。 10/5 《Java技術(shù)》課程2019年秋季期末考試復(fù)習題 8. 簡述異常的傳播途徑。 答:在“try ?catch ?finally結(jié)構(gòu)中”,如果沒有一個 catch子句能夠匹配已經(jīng)

62、產(chǎn)生的異常,則執(zhí)行 finally子句 (如果存在)。此時,如果仍然沒有程序能夠處理這個異常,好像發(fā)出異常的語句根本沒有嵌套在 try語句中, 控制流程將會立即離開當前方法,過早地返回調(diào)用當前方法的方法中。如果這個調(diào)用語句處于某一個 try語句 范圍之內(nèi),則將開始執(zhí)行新一輪的異常匹配操作。 9. 節(jié)點流和處理流有什么差別? 答: 節(jié)點流從一個特定的數(shù)據(jù)源讀寫數(shù)據(jù)。即節(jié)點流是直接操作文件,網(wǎng)絡(luò)等的流。處理流是 “連接”在已存在 的流(節(jié)點流或處理流)之上通過對數(shù)據(jù)的處理為程序提供更為強大的讀寫功能。 FileInputStream 、 FileO

63、utputStream 、FileReader 、FileWriter 都是節(jié)點流。緩沖流、轉(zhuǎn)換流、數(shù)據(jù)流和對象流都 是處理流 10. 什么是線程?使用多線程有哪些好處?又會帶來哪些問題? 答:通俗地講,線程是一個代碼執(zhí)行流。 使用多線程的好處是:( 1)多線程為多個代碼執(zhí)行流并發(fā)執(zhí)行提供 了可能。 (2)多線程程序比多進程程序降低 了資源占用要求。 使用多線程也會對系統(tǒng)產(chǎn)生一些不利影響: (1)線程需要占用內(nèi)存,線程越多,內(nèi)存占用越多。( 2)線程過多, 會消耗大量 CPU時間來跟蹤線程。 (3)必須考慮多線程同時訪問共享資源的問題,如果沒有協(xié)調(diào)好,就會

64、產(chǎn)生令人 意想不到的問題,例如死鎖 和資源競爭等。( 4)因為同一個任務(wù)的所有線程都共享相同的地址空間,并共享任務(wù)的 全局變量,所以程序 也必須考慮多線程同時訪問的全局變量問題 11. 試比較Runnable 接口中定義的 run()方法與Application 程序入口 main() 方法有哪些相近之處? 在Runnable 接口中定義的惟一的方法是 run(),在線程執(zhí)行時調(diào)用。線程退出 run()之后,就已經(jīng)死亡,無 法 重新啟動或復(fù)用。不管是正常退出還是由于未捕獲異常退出,情況都是如此。在效果上,線程的 run()方法與 Java應(yīng)用程序的

65、main()方法作用相同:就是代碼的初始入口點。在應(yīng)用程序中, mian()控制程序的主流程, 在線程中, run()控制線程任務(wù)的處理流程。 從本質(zhì)上來說,對于一個新創(chuàng)建的線程, run()方法可以被看成 是main()方法:如同程序是從 main() 方法開始運行一樣,新線程就是從其 run() 方法開始運行的。但是 main() 方法從argv來獲取它的參數(shù)( argv一般是通 過命令行來設(shè)定的),而新創(chuàng)建的線程是用編程的方式從原始線 程獲取它的參數(shù)的。因此,我們可以通過構(gòu)造方法、 靜態(tài)實例變量或者程序員設(shè)計的其他技術(shù)來獲得這些參數(shù) 12. 如何用

66、分層次的方法看待組件和容器之間的關(guān)系? 容器和組件通常是具有一定的包含關(guān)系的。可以按照這樣的觀點分層次: 頂層容器(不會包含在其它任何容 器中的容器),例如JFrame、JApplet、JDialog、JWindow等; 中間容器,例如JPanel、JScrollPane 、 JSplitPane、JToolBar等;基本控件,例如JButton、JComboBox 、JList、JMenu、JTextField等;可 編輯的組件,例如JColorChooser、JFileChooser、JTextArea等。在構(gòu)建程序的圖形界面時,一般一次創(chuàng)建 頂層容器,中間容器,基本控件和可編輯組件,然后再把基本控件和 可編輯組件放到中間容器中,最后再把中 間容器放到頂層容器中 13. Java程序通過JDBC訪問數(shù)據(jù)庫的工作方式是怎樣的? 11/5 《Java技術(shù)》課程2019年秋季期末考試復(fù)習題 答:JDBCAPI 和JDBC驅(qū)動程序協(xié)同實現(xiàn) Java程序?qū)?shù)據(jù)庫的訪問功能。其中,

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!