2019年秋季北郵《Java技術》期末考試復習題
《2019年秋季北郵《Java技術》期末考試復習題》由會員分享,可在線閱讀,更多相關《2019年秋季北郵《Java技術》期末考試復習題(25頁珍藏版)》請在裝配圖網上搜索。
1、精選優(yōu)質文檔-----傾情為你奉上 《 Java技術》課程2019年秋季期末考試復習題 《 Java技術》課程2019年春季期末考試復習題 二、考試重點(占期末考試成績 60%) 一、單項選擇題 1.計算機硬件能直接執(zhí)行的只能是( B)。 A.符號語言程序 B.機器語言程序 C.匯編語言程序 D.高級語言程序 2. Java語言屬于(C)。 A.面向過程的解釋型語言 B.面向過程的編譯型語言 C.面向對象的解釋型語言 D.面向對象的編譯型語言 3.根據TIOBE編程語言社區(qū)排行榜的統計,使用率居
2、于前三的編程語言是( A)。 A.Java、C、C++ B.Java、C#、C++ C.Java、Python、Ruby D.Objective-C、C++、Java 4.下述Java平臺中,最適于開發(fā)嵌入式系統應用程序的是( C)。 A.JavaSE B.JavaEE C.JavaME D.JavaApplet 5. 下面關于Java類文件的說法錯誤的是(D)。 A.Java編譯器會為源程序中的每個類單獨生成一個類文件 B.Java類文件中存儲的代碼必須符合 JVM規(guī)范 C.Java類文件中存儲的代碼是二進制形式的代碼 D.Ja
3、va 類文件必須用 Java語言編寫得到 6. 下列關于Eclipse說法錯誤的是(A)。 A.使用Eclipse開發(fā)Java程序時,程序員編輯源程序后即可運行該程序,因此無編譯程序的過程B.Eclipse中的Workspace用于存儲工程的路徑 C.在Windows系統下,Eclipse程序包解壓縮后即可直接使用,無需安裝D.Eclipse是一個基于Java的、可擴展的、開放源代碼的開發(fā)平臺 7. 下列關于IDE開發(fā)環(huán)境Eclipse的說法錯誤的是(D)。A.Eclipse可以通過插件(plugin)的方式擴展其功能 B.Eclipse聯盟是由IBM公司捐資組建
4、的 C.Eclipse使用了SWT圖形界面技術 D.Eclipse 的運行不需要有 JRE的支持 8. 關于Eclipse的視景說法錯誤的是(C)。 A. 每個視景都定義了工作臺中各個視圖的初始設置和布局 B. 一個工作臺窗口包含多個獨立的視景,但同一時刻只有一個視景是對用戶可見的 C. 視景的布局是可以改變的,但改變多次后無法再恢復到初始設置 D. 每個視景都有自己的視圖和編輯器,用戶可以在各個視景間切換 9.在Java中,由Java編譯器自動導入,而無需在程序中用 import導入的包是( A)。A.java.lang B.java.a
5、wt C.java.io D.java.applet 10.在Java中,用package語句聲明一個包時,該包的層次結構必須是( B)。 A.與文件的結構相同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. 應用程序的main方法
6、中有以下語句: Strings1=newString("abc"); 專心---專注---專業(yè) 1/5 《Java技術》課程2019年秋季期末考試復習題 Strings2=newString("abc"); booleanb1=s1.equals(s2); booleanb2=(s1==s2); System.out.print(b1+" "+b2); 則輸出的結果是( A)。 A.truefalse B.falsetrue C.truetrue D.falsefalse 15.應用程序的 main方法中有以下語句: Strin
7、gs="12"; s=s+34; System.out.println(s); 則下述說法正 確的是(C)。 A. 程序有錯誤,不能通過編譯 B. 程序沒有錯誤,運行輸出結果為:46 C. 程序沒有錯誤,運行輸出結果為:1234 D. 程序沒有錯誤,運行輸出結果為:1216.設有如下類定義 classFruit{//水果類intgrams;// 克數(質量)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.設有如下程序段 classTest{privateintm;publicstaticvoidfun(){//somecode 要使成員?變量}}m能夠被 方法fun()直接訪問,則下面選項正確的是( C)。 A.將privateintm 改成protectedintm B.將privateintm 改成publicintm C.將privateintm 改成staticintm
9、D.將privateintm 改成intm 18.設有如下類定義 classA{privateinti; protectedintj;} classBextendsA{ privateintk;protectedintm;} 則下面敘述最為準確的是( A)。A.類B的對象包含數 據域i,j,k,m B.類B的對象包含數據域 j,k,m C.類B的對象包含數據域 k,m D.類B的對象包含數據域 m 19.下述關于重載和覆蓋的敘述正確的是( A)。 A. 子類方法覆蓋父類方法時,子類方法不能比父類方法更“私有” B.
10、靜態(tài)方法不能被重載C.私有方法不能被重載 D. 重載方法不能拋出父類中的不可檢測異常 20. 下述關于構造方法的敘述正確的是(B)。 A.構造方法不能被重載 B.構造方法不能被覆蓋 C. 構造方法可以返回一個基本數據類型的數據或者一個對象的引用 D. 構造方法的代碼在執(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技術》課程2019年秋季期末考試復習題 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.通過編譯,程序運行結果是 finally B.通過編譯,程序運行結果是 exception finished C.通過編譯,程序運行結果是 finallyexceptionfinished D.編譯錯誤,不能通過編譯 25. 下面關于異常的陳述正確的是(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. 設
16、在Windows系統上有文件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.下面可以從一個輸入流中讀取一行內容的方法是( 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.程序能夠通過編譯,但是運行的時候沒有任何輸出,因為沒有調用 run()方法 3/5 《 Java技術》課程2019年秋季期末考試復習題 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. 下面關于布局管理的敘述正確的是( D)。
19、 A. 順序布局能夠用于放置水平大小隨容器大小變化而變化的組件 B. 網格布局能夠用于放置大小為常數定值的組件 C. 邊界布局能夠用于放置大小為常數定值的組件 D. 網格包布局能夠提供網格布局類似的布局,并且允許個別的行和列具有自己特定的大小 33.當ActionEvent 事件發(fā)生時,能夠取得事件源對象的方法是( B)。 A.publicClassgetClass() B.publicObjectgetSource() C.publicComponentgetSource() D.publicComponentgetTarget() 3
20、4.用鼠標單擊 JFrame窗口右上角的關閉按鈕,發(fā)生的事件是( B)。 A.ItemEvent B.WindowEvent C.MouseMotionEvent D.ComponentEvent 35. 用來處理監(jiān)聽器的組件是(B)。 A.事件源對象 B.監(jiān)聽器對象 C.適配器對象 D.代理器對象 36. 下面關于JDBC的陳述錯誤的是(D)。A.JDBC本身是個商標名 B.JDBC由一組用Java類和接口組成的 C.JDBC 可以使程序員能夠用純JavaAPI來編寫數據庫應用程序 D.JDBC 驅動程序必須由 ORACLE 公司開發(fā)
21、 37.JDBC接口Statement 中定義的execute()方法的返回類型是( C)。 A.ResultSet B.int C.boolean D.受影響的記錄數量 38.JDBC接口Statement 中定義的executeQuery() 方法的返回類型是( A)。 A.ResultSet B.int C.boolean D.受影響的記錄數量 39.JDBC接口Statement 中定義的executeUpdate() 方法的返回類型是( B)。 A.ResultSet B.int C.boolean
22、 .受影響的記錄數量 40.獲取ResutlSet 對象rst的第一行數據,以下正確的是( 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. 下面哪些關鍵字能用來控制對類成員的訪問( 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. 下面關于Java中異常處理try塊的說法正確的是(AC)。 A.try塊后通常應有一個 catch塊,用來處理try塊中拋出的異常 4/5 《Java技術》課程2019年秋季期末考試復習題 B.catch塊后必須有final
24、ly塊 C.可能拋出異常的方法調用應放在 try塊中 D.對拋出的異常的處理必須放在 try塊中 題5.關于BufferedReader類的readLine()方法,以下說法正確的有( ACD )。 A. 方法readLine()每次讀取一行數據 B. 方法readLine()每次讀取一個字節(jié) C.該方法可能拋出 IOException異常,調用該方法時通常應將它放到 try塊中,并通過catch塊處理異常 D.如果讀到流的末尾,該方法返回的結果為 null 填空題 1. 程序設計語言按思維模式可以分為__面向過程的
25、語言__和__面向對象的語言__兩類。 2. Java的三個版本是JavaSE、JavaEE 和JavaME。 3. 完整的Java體系結構包括四個組件,分別是 Java編程語言 、Java類文件格式 、Java應用程序編程接口 和 Java虛擬機。 4. Java運行時環(huán)境是由_Java虛擬機_和_核心類 組合形成的。 5. 在Java類文件中存儲的二進制代碼稱為 _字節(jié)碼 ,它們是JVM的指令。 6. 在主機操作系統上由軟件實現的 Java虛擬機實際上是用本地(如C/C++等) 語言編寫的程序。 7. Java虛擬機主
26、要包括兩個模塊,一個是 類裝載器 ,另一個是執(zhí)行引擎。 8. JDK提供了開發(fā)Java程序所需的各種工具(諸如Java編譯器、Java虛擬機等程序)和資源,同時也提供了運行 Java程序的Java運行時環(huán)境 。 9. 環(huán)境變量相當于給系統或用戶應用程序設置的一些參數,具體起什么作用和具體程序相關。 10. 開發(fā)一個完整的Java應用程序系統,為了便于管理,可能需要將一系列的程序文件、資源文件和其它相關文 件 放到一個Java項目中。 11. Eclipse根據任務的不同把視圖和編輯器預先劃分為不同的類別,預設好視圖的排列方式,并把每一個類別稱為一個視景
27、(或透視圖)。 12. 為管理和使用大量的類和接口,Java把一組類和接口封裝在一個包內。 13. 對象是程序的基本組成實體,類是創(chuàng)建對象的 模版 。 14. Java 源程序中的類可以分為兩種,分別是系統類和用戶自己定義類 。 15. 編譯程序的時候會自動導入到程序中的系統包是 java.lang。 16. 把基本數據類型包裝成類的好處是可以提供基本數據類型的信息,還可以使用類的方法對數據進行操作 。 17. 在Java中,int類型的包裝類是 Integer,char類型的包裝類是 Character。 1
28、8. Integer類的parseInt() 方法的功能是把一個字符串轉換為一個整型數據 。 19. Java 把數據輸出到控制臺是使用標準輸出流 或System.out 完成的。 20. Scanner類是在java.util 包中定義的。 21. 創(chuàng)建一個連接到標準輸入流對象 System.in的Scanner 對象的語句是ScannermyScanner=new Scanner(System.in);。 22. 設myS是一個Scanner 類的實例,則語句“intx=myS.nextI
29、nt(); ”的作用是讀取一個整數,然后把這個整數賦 給變量x。 23. Java 提供的專門用于格式化輸出數據的方法是 System.out.printf() 。 24. Java 提供的用于處理日期和時間信息的系統類是 java.util.Date 。 25. 字符串常量是用雙引號括起來的字符序列 。 26. Java用于處理處理字符串的類有兩個,分別是 String類和StringBuffer 類。 5/5 《Java技術》課程2019年秋季期末考試復習題 27
30、. Java的編譯器會為每個字符串常量生成一個 String類的實例。 28. 取得字符串的長度的方法是調用字符串對象的 length()方法。 29. 在Java中,每當創(chuàng)建一個對象時,系統都會從它管理的內存中分配一定的空間給這個對象。我們把創(chuàng)建好的 對象叫做對象實體,而這個對象實體的 “標識”叫做對象的引用 。 30. 構造方法有兩個作用,一個作用是提供要實例化的類的類名,另一個作用是把新創(chuàng)建的對象初始化 。 31. new關鍵字用于創(chuàng)建對象,new關鍵字被執(zhí)行之后會返回新創(chuàng)建對象的 引用 。 32. 在聲明成員變量的時候,用關鍵字 sta
31、tic 修飾的變量是類變量,類變量也稱為 靜態(tài) 變量。 33. 在聲明成員變量的時候,沒有被關鍵字 static 修飾的變量是 實例變量。 34. 在聲明成員方法的時候,用關鍵字 static 修飾的方法是類方法,類方法也稱為 靜態(tài) 方法。 35. 在聲明成員方法的時候,沒有被關鍵字 static 修飾的方法是 實例方法。 36. 調用類方法有兩種情況,一種是通過 類名 調用類方法,另一種是通過 對象名 調用類方法。 37. 在面向對象的程序中,方法是用于定義對象的某個特定 功能 的代碼段。
32、 38. 方法名和方法的參數類型稱為方法的 簽名 。 39. 調用方法的語句格式是reference.method(arguments) 。 40. 編譯源程序時,編譯器會為方法添加一個隱式參數,用來存儲運行時刻傳來的 當前對象的引用 。 41. 面向對象技術有三個基本特性,分別是 封裝 、繼承 和多態(tài) 。 42. 包含在對象屬性中的數據值的集合通常稱為對象的 狀態(tài) 。 43. 對象除了保存數據之外,還提供若干操作數據的方法,用以描述的對象的行為 。
33、 44. 封裝有兩方面的意思:一個方面是對象封裝了 功能的內容實現機制,另一個方面是對象封裝了它持有的數據 。 45. 在Java中,通過在類定義里面定義 屬性和方法 ,強制實現對數據和功能的封裝。 46. Java程序中的所有類都由系統類Object直接繼承或間接繼承得到的。 47.Java中的多態(tài)是指 一個程序中同名的不同方法共存 的情況。 48. Java中的多態(tài)分為編譯時多態(tài)和運行時多態(tài)兩類。 49. 使用接口實際上要做兩件事:第一是聲明接口(定義接口),第二是在類中實現接口 。 50.
34、 回調是一種常見的程序設計模式,這種模式在 Java中通常是用接口 來實現。 51. 所謂異常,就是程序的運行時錯誤 。 52. “異?!碑a生時,意味著在當前環(huán)境下無法獲得必要的信息來解決問題, 我們所能做的就是從當前環(huán)境中跳出, 并且把問題提交給上一級別的環(huán)境。 53. 我們把生成異常對象并把它交給運行時系統的異常處理機制的過程稱為 拋出異常。 54. 運行時系統的異常處理機制在方法的調用棧中查找,從生成異常的方法開始回溯,直到找到包含相應異常處 理 的方法為止,這個過程稱為 捕獲異常 。 55. 編譯
35、器要求我們編寫的程序必須對可檢測的異常進行處理,否則 不能通過編譯。 56. 異常通常由以下兩種情況引起,一種是 程序執(zhí)行了不合法的動作 ,另一種是通過執(zhí)行 throw語句由程序顯 式拋出。 57. 按照數據的傳輸方向,流可以分為 輸入流和輸出流 兩類。 58. 按照數據的格式,流可以分為字節(jié)流和字符流兩類。 59. 系統類FileInputStream 和FileOutputStream 用于以字節(jié)方式處理文件的輸入和輸出,稱為文件輸入 /輸出流。 60. 系統類FileReader 和FileWri
36、ter 用于以字符方式處理文件的輸入和輸出,稱為文件讀寫器。 61. 系統類BufferedReader 和BufferedWriter 分別稱為緩沖讀取器和緩沖寫入器。 62. 使用緩沖流的好處是可以減少系統和外部設備交換數據的次數 。 63. 系統類DataInputStream 和DataOutputStream 稱為數據輸入/輸出流,它們在輸入輸出數 據 的同時能對流中的數據進行變換處理。 64. 提供操作系統目錄管理功能的文件類是 File 。 65. 用于文件的隨機讀寫操作的
37、文件類是 RandomAccessFile 。 6/5 《 Java技術》課程2019年秋季期末考試復習題 66. 通俗地講,線程就是一個代碼執(zhí)行流。 67. Java程序是從一個眾所周知的入口點開始執(zhí)行的,即是從 main()方法的第一條語句開始執(zhí)行的。 68. 當Java程序啟動時,系統就為它創(chuàng)建好一個線程,用這個線程執(zhí)行 main()方法中的代碼序列。這個系統 創(chuàng)建好的線程叫主線程 。 69. JVM創(chuàng)建的線程稱為系統線程,我們自己在程序中用代碼創(chuàng)建的線程稱為用戶線程 。
38、 70. JavaAPI提供創(chuàng)建線程的系統類是 Thread ,它的對象就是一個線程。 71. 線程類的獲取當前線程對象引用的方法是 currentThread() ,獲取當前線程名字的方法是getName() 。 72. 在Java中,線程被表示為Java.lang.Thread 類的一個實例。 73. 一個線程要完成一個應用任務,為了完成該應用任務而編寫的代碼要放到 run() 方法中。 74. 創(chuàng)建好線程對象之后并不意味著這個線程就會被處理機( JMV)運行,還需要調用線程對象的start() 方 法
39、啟動線程。 75. 我們稱實現了Runnable接口的類為線程化的類,稱實現了該接口的類的實例為可運行的對象 。 76. 從實現了Runnable接口的對象創(chuàng)建線程對象的方法是,建立一個單獨的 Thread對象,并把可運行對象傳 遞給專門的Thread類的構造 方法。 77. 線程生命周期共有五個狀態(tài),分別是新建狀態(tài) 、就緒狀態(tài)、運行狀態(tài)、阻塞狀態(tài)、死亡狀態(tài)。 78. Java的線程調度策略采用搶占 式調度。 79. 使用Swing編寫程序的圖形界面要引入
40、兩個程序包,其中包含 Swing 的基本類的程序包是 java.swing , 包 java.awt.event。 含與處理事件相關的接口和類的程序包是 80. 使用布局管理器要引入java.awt包。 81. 事件監(jiān)聽者必須實現與事件類型相對應的事件監(jiān)聽接口,它才具有處理那類事件的能力。 82. Java有三種窗口,分別是 Applet窗口、框架窗口(JFrame)和無邊框的窗口(JWindow)。 83. 設mw是一個JFrame 窗口,取得 mw的內容面板的語句是mw.getContentPa
41、ne() 。 84. 要獲取事件 e的命令字符串,從而知道是哪一個組件激發(fā)的事件,則應該使用的代碼是 e.getActionCommand() 。 85. 面板有兩種,分別是普通面板 (JPanel)和滾動面(JScrollPane) 。 86. 布局管理器是實現了LayoutManager 接口的類。 87. 小應用程序和面板默認的布局管理器是 FlowLayout 。 88. JWindow、JFrame和JDialog默認的布局管理器是BorderLayout 。
42、 89. 空布局就是把一個容器的布局管理器設置為 null 布局。 90. 當把一個容器的布局管理器設置為 null 布局的時候,可以使用setBounds() 方法手工設置組件本身的大 小和組件在容器中的位置。 91. 菜單分為下拉式菜單和彈出式菜單 兩種。 92. 處理菜單項事件的接口是ActionListener,要實現的接口方法是actionPerformed(),獲得事件源的方法是getSource()。 93. 在Swing中,有兩個對話框類,一個是JDialog類,它提供構造并管理
43、通用對話框功能;另一個是 94. JOptionPane類,它提供構造常見對話框功能。 滾動條對象的事件處理事件類型是 AdjustmentEvents ,要實現的事件監(jiān)聽接口的方法是 adjustmentValueChanaged(),注冊事件監(jiān)聽器的方法是 addAdjustmentListener() ,獲取事件源對象的 方法是getAdjustable() 。 95. Java處理鼠標事件提供了兩個接口,分別是 MouseListener 接口 和MouseMotionListener
44、接口 。 96. Java技術中,應用程序使用JDBC訪問數據庫。其中,JDBCAPI和JDBC驅動程序 協同實現 Java程序對數據庫的訪問功能。 97. DriverManage類的getConnection() 方法用于建立數據庫連接。 98. java.sql 包中用于處理特定數據庫連接的類是 Connection 類 。 99. java.sql 包中用于在指定的連接中處理 SQL語句的類是Statement 類。 100.java.sql 包中用于管
45、理查詢結果集的類是 ResultSet類 。 三、判斷題 1. 程序設計語言按思維模式可以分為編譯執(zhí)行語言和解釋執(zhí)行語言兩類。 ( )B 7/5 《Java技術》課程2019年秋季期末考試復習題 A.正確 B.錯誤 2. 在主機操作系統上由軟件實現的 Java虛擬機實際上是用本地語言(如 C/C++等)編寫的程序。( )A A.正確 B.錯誤 3. Eclipse聯盟是由Sun公司捐資組建的。()B A.正確 B.錯誤 4. Eclipse根據任務的不同把視圖和編輯器預先劃分為不同的類別,預
46、設好視圖的排列方式,并把每一個類別稱為一個視景。()A A.正確 B.錯誤 5. 為管理和使用大量的類和接口, Java把一組類和接口封裝在一個包內。 ()A A.正確 B.錯誤 6. 把基本數據類型包裝成類的好處是可以提供基本數據類型的信息,還可以使用類的方法對數據進行操作。 (A ) A.正確 B.錯誤 7. 在聲明成員變量的時候,用關鍵字class修飾的變量是類變量。()B A.正確 B.錯誤 8. new運算符用于創(chuàng)建對象, new運算符被執(zhí)行之后會返回新創(chuàng)建對象的內存地址。
47、( )B A.正確 B.錯誤 9. Java中的多態(tài)是指一個程序中同名的不同方法共存的情況。 ()A A.正確 B.錯誤 10. Java中的多態(tài)是指用一個類可以創(chuàng)建功能不同的對象。()B A.正確 B.錯誤 11.使用接口實際上要做兩件事:第一是聲明接口,第二是在類中實現接口。 ( )A A.正確 12. Java使用接口實現“回調”程序設計模式。( )A A. 正確 B.錯誤 13. J
48、ava程序運行時出現的異常通常是由計算機硬件錯誤引起的。 ( )B A. 正確 B.錯誤 14. 我們把生成異常對象并把它交給運行時系統的異常處理機制的過程稱為捕獲異常。 ( )B A. 正確 B.錯誤 15. 按照數據的傳輸方向,流可以分為字節(jié)流和字符流兩類。 ( )B A. 正確 B.錯誤 16. 用于文件的隨機讀寫操作的文件類是 File。()B A. 正確 B.錯誤 1
49、7. 當Java程序啟動時,系統就為它創(chuàng)建好一個線程,用這個線程執(zhí)行 main() 方法中的代碼序列。這個系統 創(chuàng)建好的線程叫主線程。()A A.正確 B.錯誤 18. 線程要完成一個應用任務,為了完成該應用任務而編寫的代碼要放到 start()方法中。( )B A. 正確 B.錯誤 19. 小應用程序和面板默認的布局管理器都是 FlowLayout。()A A. 正確 B.錯誤 20. 要獲取事件e的命令字符
50、串從而知道是哪一個組件激發(fā)的事件, 則應使用的代碼是e.getActionCommand() 。(A) A. 正確 B.錯誤 第二部分:簡答題 8/5 《Java技術》課程2019年秋季期末考試復習題 題1.什么是包?它的主要作用是什么? 答案:包是 Java提供的一種組織類的機制,有時也稱為類庫。這種機制功能相似或相關的類或接口組織在同 一個包中, 方便類的查找和使用。 Java使用包(package)這種機制是為了防止命名沖突,訪問控制,提供搜索和 定位類(class)、接口、枚舉
51、(enumerations)和注釋(annotation)等 題2.類方法和實例方法有哪些不同? 答:答:在聲明成員方法的時候,用關鍵字 static修飾的方法就是類方法,沒有被關鍵 字 static修飾的方法就是實例方法。類方法也稱為靜態(tài)方法。類方法和實例方法的區(qū)別在于類方法不針對特定的對象,所以在沒有創(chuàng)建對象之前可以執(zhí)行,而且在類方法中只能訪問類變量和類方法,而不能訪問實例變量和實例方法。實例方法則只能針對特定的對象執(zhí)行,因此,如果任何對象都不存在,則也就沒有可以執(zhí)行的實例方法。 題 3.什么是接口?它的作用是什么? 答案:在Java 中,接口不是類,而
52、是一組抽象方法和常量的集合,用來描述類應該提供什么樣 的功能。在接口中定 義的方法僅僅給出方法名稱、參數列表、返回值類型等信息的說明,并不給出方 法體的具體代碼,即沒有給出方法 功能的具體實現。在程序中定義了一個接口以后,就可以聲明某些 類實現了這個接口,在實現了該接口的類中再給 出接口的方法的功能代碼。這相當于用接口規(guī)范了實 現接口的那些類都必須以特定的形式提供一組特定的功能。反 過來,實現某個接口的類必須提供該接 口規(guī)定的功能,并且要遵從接口中定義的方法的格式約定。 題4.什么是線程?使用多線程有哪些好處?又會帶來哪些問題
53、? 1)多線 答案:通俗地講,線程是一個代碼執(zhí)行流。 使用多線程的好處是:( 程為多個代碼執(zhí)行流并發(fā)執(zhí)行提供了可能。 (2)多線程程序比多進程程序降低 了資 源占用要求。使用多線程也會對系統產生一些不利影響: (1)線程需要占用內存, 線程越多,內存占用越多。(2)線程過多, 會消耗大量CPU 時間來跟蹤線程。(3) 必須考慮多線程同時訪問共享資源的問題,如果沒有協調好,就會產生令人 意想不到 的問題,例如死鎖和資源競爭等。( 4)因為同一個任務的所有線程都共享相同的地 址空間,并共享任務的 全局變量,所以程序也必須考慮
54、多線程同時訪問的全局變量問 題 1. 編譯型語言和解釋型語言有什么不同? Java程序執(zhí)行前需要用編譯器編譯,但為什么卻說 Java是解釋型 語言呢? 答案:編譯型語言在程序執(zhí)行之前,有一個單獨的編譯過程,將程序翻譯成機器語言,以后執(zhí)行這個程序的時候就不用再進行翻譯了。解釋型語言是在運行的時候將程序翻譯成機器語言,所以運行速度相對于編譯型 語言要慢。C/C++ 等都是編譯型語言,而 Java、C#等都是解釋型語言。雖然 Java 程序在運行之前也 有一個編譯過程,但是并不是將程序編譯成機器語言,而是將它編譯成字節(jié)碼(可以理解為一個中間語言)。
55、 在運行的時候,由 JVM將字節(jié)碼再翻譯成機器語言。 C/C++編譯和鏈接后,可形成獨立的可執(zhí)行文件,而 Java、C#等編譯后只得到中間形式的二進制文件, 它必須由專用的解釋器換成本地機器代碼后才能執(zhí)行。 此外,像JavaScript、VBScript、PHP、PERL等腳本語言一般也都由相應的腳本引擎來解釋執(zhí)行 2. 什么是Java虛擬機?它的主要功能是什么?答: JVM是在一臺計算機上由軟件模擬,也可用硬件實現的假想的計算機,它定義了指令集(相當于中央處理器 CPU)、寄存器、類文件結構棧、垃圾收集堆、內存區(qū)域等。 JVM是執(zhí)行Java程序的引擎
56、。 Java程序編譯后得到的二進制形式的字節(jié)碼實際上就是 JVM指令。 3. 什么是包?它的主要作用是什么? 答:包是Java提供的一種組織類的機制,有時也稱為類庫。這種機制功能相似或相關的類或接口組織在同一個包中,方便類的查找和使用。 Java使用包(package)這種機制是為了防止命名沖突,訪問控制,提供搜索和定位類( class)、接口、枚舉 (enumerations)和注釋(annotation)等。 9/5 《Java技術》課程2019年秋季期末考試復習題 4. 類變量和實例變量有哪些不同? 答: 在定義成員變量
57、時,如果用 static 修飾符修飾,則該變量是類變量(也稱“靜態(tài)變量”),否則是實例 變量。 類變量不屬于類的任何一個具體對象。它保存在類的內存區(qū)域的公共存儲單元。類的任何一個對象對類變量 的存取都是對同一個內存單元進行操作。 與類變量相對,實例變量屬于類的某個具體的對象。它在類的每個對象 的內存區(qū)域中都保存一份。類的任何一 個對象對實例變量的存取都是對自己內存區(qū)域內保存的實例變量的副本進行 操作。 5.什么是內部類?使用內部類有什么好處? 答:Java允許將一個類的定義放在另一個類的內部。定義在另一個類內部的類就是內部類。但內部類是一種編譯器
58、現象,與虛擬機無關。當使用內部類時,編譯器會從外部類中把內嵌的類分離出來并調整編譯結果。內部類允許我們把一些邏輯相關的類組織在一起,并控制在內部的類的訪問特性。內部類的對象持有一個隱式引用,它引用了實例化該內部對象的外圍類對象。通過這個引用,可以訪問外圍類對象的全部狀態(tài)。 5.什么是多態(tài)?Java的編譯時多態(tài)和運行時多態(tài)有什么區(qū)別? 答:Java中的多態(tài)就是指一個程序中同名的不同方法共存的情況。分為編譯時多態(tài)和運行時多態(tài)兩類。 方法 重載可以實現Java的編譯時多態(tài)。它是在相同類內,定義名稱相同,但參數個數或參數類型不同的方法。 編 譯器會根據實參的個數和類型,確定
59、調用哪個方法。所謂編譯時多態(tài),是指程序會根據參數的不同來調用相應 的方法。具體調用哪個被重載的方法,是由編譯器在編譯階段決定的。所以編譯時多態(tài)也叫做靜態(tài)多態(tài)性。 方法覆蓋可以實現Java的運行時多態(tài)。它是在子類當中,定義名稱、參數個數與類型均與父類相同的方法, 用以改寫父類方法的功能。運行時多態(tài)是一種在運行時,而不是在編譯時調用覆蓋方法的一種機制。對于覆蓋 的方法,Java運行時系統根據調用該方法的實例的類型,來決定選擇哪個方法調用。 6. 什么是接口?它的作用是什么? 答:在Java中,接口不是類,而是一組抽象方法和常量的集合,用來描述類應該提
60、供什么樣的功能。在接口中定義的方法僅僅給出方法名稱、參數列表、返回值類型等信息的說明,并不給出方法體的具體代碼,即沒有給出方法功能的具體實現。在程序中定義了一個接口以后,就可以聲明某些類實現了這個接口,在實現了該接口的類中再給出接口的方法的功能代碼。這相當于用接口規(guī)范了實現接口的那些類都必須以特定的形式提供一組特定的功能。反過來,實現某個接口的類必須提供該接口規(guī)定的功能,并且要遵從接口中定義的方法的格式約定。 7. 什么是異常?Java處理異常的方法是什么? 答: 所謂異常,就是程序的運行時錯誤。 Java通過面向對象的方法來處理異常。在一個方法的運行過程中,如果
61、 發(fā)生了一個異常,則 Java虛擬機會如 同創(chuàng)建其它對象一樣,使用 new在堆上創(chuàng)建異常對象。然后,當前的執(zhí) 行流程被終止,并且從當前環(huán)境中彈出異 常對象的引用。此時, Java的異常處理機制接管程序,并開始尋找 一個恰當的的地方來繼續(xù)執(zhí)行程序。這個恰當 的地方就是“異常處理程序”,它的任務是將程序從錯誤狀態(tài)中恢 復或者做一些簡單地處理后結束程序。 10/5 《Java技術》課程2019年秋季期末考試復習題 8. 簡述異常的傳播途徑。 答:在“try ?catch ?finally結構中”,如果沒有一個 catch子句能夠匹配已經
62、產生的異常,則執(zhí)行 finally子句 (如果存在)。此時,如果仍然沒有程序能夠處理這個異常,好像發(fā)出異常的語句根本沒有嵌套在 try語句中, 控制流程將會立即離開當前方法,過早地返回調用當前方法的方法中。如果這個調用語句處于某一個 try語句 范圍之內,則將開始執(zhí)行新一輪的異常匹配操作。 9. 節(jié)點流和處理流有什么差別? 答: 節(jié)點流從一個特定的數據源讀寫數據。即節(jié)點流是直接操作文件,網絡等的流。處理流是 “連接”在已存在 的流(節(jié)點流或處理流)之上通過對數據的處理為程序提供更為強大的讀寫功能。 FileInputStream 、 FileO
63、utputStream 、FileReader 、FileWriter 都是節(jié)點流。緩沖流、轉換流、數據流和對象流都 是處理流 10. 什么是線程?使用多線程有哪些好處?又會帶來哪些問題? 答:通俗地講,線程是一個代碼執(zhí)行流。 使用多線程的好處是:( 1)多線程為多個代碼執(zhí)行流并發(fā)執(zhí)行提供 了可能。 (2)多線程程序比多進程程序降低 了資源占用要求。 使用多線程也會對系統產生一些不利影響: (1)線程需要占用內存,線程越多,內存占用越多。( 2)線程過多, 會消耗大量 CPU時間來跟蹤線程。 (3)必須考慮多線程同時訪問共享資源的問題,如果沒有協調好,就會
64、產生令人 意想不到的問題,例如死鎖 和資源競爭等。( 4)因為同一個任務的所有線程都共享相同的地址空間,并共享任務的 全局變量,所以程序 也必須考慮多線程同時訪問的全局變量問題 11. 試比較Runnable 接口中定義的 run()方法與Application 程序入口 main() 方法有哪些相近之處? 在Runnable 接口中定義的惟一的方法是 run(),在線程執(zhí)行時調用。線程退出 run()之后,就已經死亡,無 法 重新啟動或復用。不管是正常退出還是由于未捕獲異常退出,情況都是如此。在效果上,線程的 run()方法與 Java應用程序的
65、main()方法作用相同:就是代碼的初始入口點。在應用程序中, mian()控制程序的主流程, 在線程中, run()控制線程任務的處理流程。 從本質上來說,對于一個新創(chuàng)建的線程, run()方法可以被看成 是main()方法:如同程序是從 main() 方法開始運行一樣,新線程就是從其 run() 方法開始運行的。但是 main() 方法從argv來獲取它的參數( argv一般是通 過命令行來設定的),而新創(chuàng)建的線程是用編程的方式從原始線 程獲取它的參數的。因此,我們可以通過構造方法、 靜態(tài)實例變量或者程序員設計的其他技術來獲得這些參數 12. 如何用
66、分層次的方法看待組件和容器之間的關系? 容器和組件通常是具有一定的包含關系的??梢园凑者@樣的觀點分層次: 頂層容器(不會包含在其它任何容 器中的容器),例如JFrame、JApplet、JDialog、JWindow等; 中間容器,例如JPanel、JScrollPane 、 JSplitPane、JToolBar等;基本控件,例如JButton、JComboBox 、JList、JMenu、JTextField等;可 編輯的組件,例如JColorChooser、JFileChooser、JTextArea等。在構建程序的圖形界面時,一般一次創(chuàng)建 頂層容器,中間容器,基本控件和可編輯組件,然后再把基本控件和 可編輯組件放到中間容器中,最后再把中 間容器放到頂層容器中 13. Java程序通過JDBC訪問數據庫的工作方式是怎樣的? 11/5 《Java技術》課程2019年秋季期末考試復習題 答:JDBCAPI 和JDBC驅動程序協同實現 Java程序對數據庫的訪問功能。其中,
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中西方家庭教育的對比ppt課件
- 《運籌學教程》第五版運籌學6對策論矩陣對策課件
- (部編版)統編版四年級語文下冊第2課《鄉(xiāng)下人家》ppt課件
- 全等三角形1--公開課一等獎ppt課件
- 《會跳舞樹葉娃娃》課件
- 9兒童詩兩首_人教版五年級的語文下冊課件
- 綠色植物是食物之源(我的課件)0
- 河南專版2022春八年級語文下冊第四單元16慶祝奧林匹克運動復興25周年習題課件新人教版
- 全國xx杯說課大賽機械類一等獎作品:鉗工車模的制作說課ppt課件
- 六年級下冊數學ppt課件-總復習(1)數的認識-整數∣北師大版
- 牛頓第二定律優(yōu)秀完整公開課ppt課件
- 調脂與卒中防治課件
- 點到平面的距離課件
- 聚焦新醫(yī)改形勢下的醫(yī)院發(fā)展戰(zhàn)略
- 四肢血管超聲基礎