Java程序設計期末復習題_第1頁
Java程序設計期末復習題_第2頁
Java程序設計期末復習題_第3頁
Java程序設計期末復習題_第4頁
Java程序設計期末復習題_第5頁
已閱讀5頁,還剩22頁未讀, 繼續免費閱讀

下載本文檔

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

文檔簡介

第一章Java概述1、Java體系有哪幾部分構成?(多選)(ABC)A.JavaSEB.JavaEEC.JavaMED.Javac2、與Jdk相關的3個重要的環境變量是?(ABC)A.JAVA_HOMEB.PATHC.CLASSPATHD.JPATHEXT3、編譯和運行Java程序分別用到的命令是?(AC)A.javacB.javadocC.javaD.javah4、編譯Java源程序文件時將產生相應的字節碼文件,這些字節碼文件的擴展名為(B)。A.javaB.classC.htmlD.exe5、Java的跨平臺機制是由______實現的。(D)A.GCB.JavaDEC.htmlD.JVM6、以下用于解釋字節碼文件的工具是(B)A.javacB.javaC.javadocD.jar7、JDK安裝成功后,______目錄用于存放Java開發所需要的類庫。(C)A.binB.demoC.libD.jre8、下面屬于文檔注釋的標記是(D)A.--B./C./*…*/D./**…*/9、關于程序中的main方法,以下說法正確的有()(ABCD)A.每個獨立的、可執行的Java應用程序必須要有main()方法才能運行B.main()方法是程序的主方法C.main()方法是整個程序的入口,D.程序運行時執行的第一個方法就是main()方法10、關于Java跨平臺技術的實現原理,以下說法正確的是(ABCD)A.JVM在具體的操作系統之上運行,其本身具有一套虛擬機指令,但它通常是在軟件而不是在硬件上實現,B.JVM形成一個抽象層,將底層硬件平臺、操作系統與編譯過的代碼聯系起來,C.Java字節碼的格式通用,具有跨平臺特性,但這種跨平臺是建立在JVM虛擬機的基礎之上D.只有通過JVM處理后才可以將字節碼轉換為特定機器上的機器碼,然后在特定的機器上運行,第二章Java語言基礎1、常見的字符集有哪3種?(ACD)A.ASCIIB.BIG5C.GB2312D.unicode2、變量的作用域可將變量分為哪兩類?局部變量和全局變量3、定義常量的關鍵字是什么?Final4、關系運算符運算后返回的結果是什么類型?(C)

A.整型B.浮點型C.布爾型D.字符型5、下面賦值語句不正確的是_____。(A)

A.floatf=2.3B.floatf=5.4f

C.doubled=3.14dD.doubled=3.1415

6、下面語句的輸出結果是______。(C)

intx=4;

System.out.println(“valueis”+((x>4)?99.9:9);

A.輸出結果為:valueis99.9B.輸出結果為:valueis9

C.輸出結果為:valueis9.0D.輸出結果為:語法錯誤7、下面代碼片段:(A)switch(m){case0:System.out.println("case0");case1:System.out.println("case1");break;case2:break;default:System.out.println("default");}當m的值為0時,將會輸出______(A)。A.case0B.case0Ccase0case1defaultD.defaultcase18、for循環的一般形式為:for(初值;終值;增量)(D)以下對for循環的描述中,正確的是______。A.初值、終值、增量必須是整數B.for循環的次數是由一個默認的循環變量決定C.初值和增量都是賦值語句,終值是條件判斷語句D.for循環是一種計次循環,每個for循環都帶有一個內部不可見循環變量,控制for循環次數9、在Java中,如下代碼段的輸出結果為________(D)publicstaticvoidmain(String[]args){intnum=1;while(num<6){System.out.print(num);if(num/2==0)continue;elsenum++;}}}A.12345B.135C.24D死循環10、關于循環說法錯誤的是_______(C)A.while循環是先判斷條件表達式是否為true,如果為true,則執行循環體B.do-while則是先循環后判斷,do-while至少會循環一次C.for()括號中的分號可以一個也不要D.for循環也是先判斷再循環11、以上哪種創建數組不正確________(C)A.int[]a={1,2,3,4,5};B.int[]a=newint[2];C.int[][]b=newint[][2];D.int[][]b=newint[2][];第三章類與繼承1、方法的主要組成部分?(ABCD)A.修飾符B.返回值C.方法名D.參數2、Java中包的分割符號是?(A)A..B.\C.\\D./3、修飾靜態成員的修飾符為?(B)A.finalB.staticC.voidD.abstract4、當聲明一個對象數組變量時,但并沒有賦值時,在內存里發生了什么?(A)A.在棧內存里開辟了存放引用的空間B.在堆內存里開辟空間5、構造方法何時被調用____。(B)A.類定義時B.創建對象時C.調用對象方法時D.使用對象的變量時6、JAVA中,訪問修飾符限制性最高的是____。(A)A.privateB.protectedC.publicD.缺省7、下列關于面向對象的程序設計的說法中,不正確的是____(B)。A.對象將數據和行為封裝于一體B.對象是面向對象技術的核心所在,在面向對象程序設計中,對象是類的抽象C.類是具有相同特征(屬性)和共同行為(方法)的一組對象的集合D.類的修飾符可以是abstract(抽象),static(靜態)或final(最終)8、關于構造方法說法錯誤的是______。(B)A.構造方法的方法名必須與類名一致B.構造方法沒有返回類型,可以是void類型C.如果在類中沒有定義任何的構造方法,則編譯器將會自動加上一個不帶任何參數的構造方法D.構造方法可以被重載9、關于方法重載說法不正確的是_______。(C)A.必須在同一個類中B.方法名相同C.方法的返回值相同D.參數列表不同10、關于包方面說法不正確的是_______(A)。A.一個Java文件中只能有一條import語句B.使用package關鍵字可以指定類所屬的包C.包在物理上的表現形式是嵌套的文件目錄D.導入包需要使用關鍵字import11、關于靜態成員說法錯誤的是______。(D)A.static關鍵字修飾的成員也稱為靜態成員B.靜態成員則可以直接通過類名調用C.靜態成員屬于整個類,當系統第一次準備使用該類時,系統會為該類的類變量分配內存空間D.靜態成員不可以通過對象來調用12、關于可變參數說法正確的是_______。(C)A.可變參數可以在參數列表的任何位置B.一個方法中允許包含多個可變參數C.可變參數的本質就是一個數組調用一個包含可變參數的方法時,只能傳入多個參數,D.不能傳入數組第四章核心類1、float對應的封裝類為?(C)A.doubleB.floatC.FloatD.Double2、裝箱是將堆中的數據封裝成對象放到棧中的過程,拆箱將棧中的數值存放到堆中的過程,這種說法正確嗎?(不對)3、關于“==”和“equals”的區別得表述正確么?(對)前者比較的地址是否相對,即是否同一個對象,后者比較的是值是否相等4、哪個是截取字符串的方法?(B)A."toUpperCase"B.“subString”5、在控制臺輸入整數的時候,用下列Scanner類的哪個方法來接收不會報錯?(ABC)A.nextIntB.nextC.nextFloatD.都會報錯6、用作數學運算和日期處理的類分別是?(AC)A.DateB.MethC.MathD.Time7、int基本數據類型對應的封裝類是____(C)。A.IntB.ShortC.IntegerD.Long8、System.out.println(“abc”+1+2)輸出的結果是____。(A)A.abc12B.abc3C.“abc”+1+2D.3abc9、下述代碼的輸出結果是____。(C)Stringstr="abcdef";System.out.println(str.substring(2,4));A.abcdefB.bcdC.cdD.cde10、關于裝箱和拆箱說法錯誤的是_____。(D)A.裝箱是指將基本類型數據值轉換成對應的封裝類對象B.裝箱將棧中的數據封裝成對象存放到堆中的過程C.拆箱是將封裝的對象轉換成基本類型數據值D.拆箱是是指將基本類型數據值轉換成對應的封裝類對象11、下列不是String類的方法的是_______。(C)A.charAt(intindex)B.indexOf(Strings)C.beginWith(Strings)D.endsWith(Strings)12、關于Object類說法不正確的是______。(B)A.Object類是所有類的頂級父類B.Object對象類定義在java.util包C.在Java體系中,所有類都直接或間接的繼承了Object類D.任何類型的對象都可以賦給Object類型的變量13、關于String、StringBuffer和StringBuilder說法錯誤的是_______。(B)A.String創建的字符串是不可變的B.StringBuffer創建的字符串是可變的,而所引用的地址一直不變C.StringBuffer是線程安全的,因此性能比StringBuilder好D.StringBuilder沒有實現線程安全,因此性能比StringBuffer好第五章類和類之間的關系1、繼承的主要作用是什么(ABC)A.解決代碼重用B.減少代碼冗余C.便于擴展2、類和類都有哪些關系?(ABCD)A.依賴B.關聯C.聚合D.組合3、匿名內部類適用于只需要使用一次的類,這種說法對嗎?對4、運用單例模式只能創建出一個對象實例,這種說法正確嗎?對5、在Java語言中,下面關于類的描述正確的是_____(B)。A.一個子類可以有多個父類B.一個父類可以有多個子類C.子類可以使用父類的所有方法D.子類一定比父類有更多的成員方法6、下列____關鍵字修飾類后不允許有子類。(D)A.abstractB.staticC.protectedD.final7、假設Child類為Base類的子類,則下面____創建對象是錯誤的。(D)A.Basebase=newChild()B.Basebase=newBase()C.Childchild=newChild()D.Childchild=newBase();8、關鍵字super和this說法不正確的是______。(AB)A.super(..)方法可以放在this(..)方法前面使用B.this(..)方法可以放在super(..)方法前面使用C.可以使用super(..)來調用父類中的構造方法D.可以使用this(..)調用本類的其他構造方法9、給定如下Java代碼,關于super的用法,以下________哪個描述是正確的(c)classStudentextendsPerson{publicStudent(){super();}}用來調用Person類中定義的super()方法用來調用Student類中定義的super()方法用來調用Person類的無參構造方法用來調用Person類的第一個出現的構造方法10、關于內部類說法錯誤的是_______。(D)A.內部類能夠隱藏起來,不為同一包的其他類訪問B.內部類是外部類的一個成員,并且依附于外部類而存在C.Java內部類主要有成員內部類、局部內部類、靜態內部類、匿名內部類D.局部內部類可以用public或private訪問修飾符進行聲明11、關于繼承說法不正確的是_______。(B)A.在繼承過程中,子類擁有父類所定義的所有屬性和方法B.在構造一個子類對象時,會首先調用自身的構造方法進行初始化,而后再調用父類的構造方法進行初始化C.Java只支持單一繼承D.使用extends關鍵字使子類繼承了父類12、關于方法重寫說法錯誤的_______。(C)A.父類中的私有方法不能被子類重寫B.父類的構造方法不能被子類重寫C.方法名以及參數列表必須完全相同,返回類型可以不一致D.父類的靜態方法不能被子類重寫第六章接口與抽象類1、定義抽象類使用的關鍵字是?(C)A.interfaceB.instanceC.abstractD.abstract2、關于接口描述正確的是?(ABC)A.接口里只能有公共方法B.接口里只能有抽象方法C.接口里只能有常量3、instanceof關鍵字的作用?(C)A.聲明對象B.聲明類別C.鑒別對象的類型4、實現接口的關鍵字是____。(C)A.abstractB.staticC.implementsD.extends5、下面說法不正確的是____。(C)A.抽象類不能直接實例化B.abstract不能與final同時修飾一個類C.final類可以有子類D.抽象類中可以沒有抽象方法6、下面的代碼運行結果是____。(C)abstractclassBase{abstractvoidmethod();staticinti;}publicclassMineextendsBase{publicstaticvoidmain(Stringargv[]){int[]ar=newint[5];for(i=0;i<ar.length;i++)System.out.println(ar[i]);}}A.一個0-5的序列將被打印。B.有錯誤C.Mine類必須聲明成abstract。D.報IndexOutOfBoundes錯誤。7、關于抽象類說法錯誤的是_____。(B)A.抽象類需要在class前用關鍵字abstract進行修飾B.抽象方法可以有方法體C.有抽象方法的類一定是抽象類D.抽象類可以沒有抽象方法8、關于接口描述錯誤的是_________。()A.接口中的所有方法都是抽象方法B.一個類可以實現多個接口,接口之間使用逗號進行間隔使用接口變量指向該接口的實現類的實例對象,這種使用方式也是多態性的一種體現C.接口可以繼承接口,使用extends關鍵字,接口的繼承和類的繼承一樣,都是單繼承9、下面說法不正確的是_________。(D)A.一個類在實現一個或多個接口,B.所有Java是支持多繼承的C.implements關鍵字用于實現接口D.不能對接口直接實例化接口的繼承與類的繼承不一樣,接口完全支持多重繼承10、下面關于抽象方法說法不正確的是_________(A)。A.一個抽象類中可以含有多個抽象方法,不能包含已實現的方法B.實現一個接口,但沒有完全實現接口中包含的抽象方法的類是抽象類C.繼承一個抽象類,但沒有完全實現父類包含的抽象方法的類是抽象類D.一個類可以繼承抽象類的同時實現一個或多個接口11、異??蚣艿淖铐攲訛??(A)A.ThrowableB.ExceptionC.Error12、捕獲異常用的關鍵字為?(B)A.ThrowB.catchC.Exception13、throw和throws的說法不正確的是?(C)A.throw是方法內拋出異常B.throws是方法聲明是拋出異常C.throw可以拋出多個異常14、自定義異常需要繼承哪個類?(A)A.ExceptionB.ErrorC.Throwable15、所有異常類的父類是______(A)。A.ThrowableB.ErrorC.ExceptionD.RuntimeException16、下面屬于非檢查型異常的類是______(B)。A.ClassNotFoundExceptionB.NullPointerExceptionC.ExceptionIOException17、能單獨和finally語句一起使用的塊是______。(A)A.tryB.catchC.throwD.throws18、用來手動拋出異常的關鍵字是______。(D)A.catchB.throwsC.popD.throw19、下列關于異常說法錯誤的是________。(C)A.一個try后面可以跟多個catch塊B.try后面可以沒有catch塊C.try可以單獨使用,后面可以沒有catch、finally部分D.finally塊都會被執行,即使在try或catch塊中遇到return,也會被執行20、下列說法錯誤的是________。(B)A.自定義異常類都繼承Exception或RuntimeException類B.使用throws聲明拋出一個異常序列,使用分號“;”隔開C.使用throw拋出一個異常對象D.異常分為檢查型異常和非檢查型異常兩種第8章泛型和集合1、泛型的描述正確的是?(B)A.泛型也需要進行強制類型轉換B.泛型可以自動進行數據類型轉換2、Java集合分為哪三大類(ABC)A.SetB.ListC.MapD.collection3、List中的對象是無序的,這種說法正確嗎?(B)A.正確B.錯誤4、Java集合中的量大體系分別是(AD)A.collectionB.ListC.SetD.Map5、Java集合常用的工具類有(AD)A.CollectionsB.CollectionC.ArrayD.Arrays6、下面______類不屬于是Collection集合體系的。(D)A.ArrayListB.LinkedListC.TreeSetD.HashMap7、創建一個ArrayList集合實例,該集合中只能存放String類型數據,下列______代碼是正確的。(B)A.ArrayListmyList=newArrayList()B.ArrayList<String>myList=newArrayList;<>()C.ArrayList<>myList=newArrayList<String>()D.ArrayList<>myList=newList<>()8、下面集合類能夠實現“FIFO”特點的是______。(A)A.LinkedListB.StackC.TreeSetD.HashMap9、在Java中LinkedList類和ArrayList類同屬于集合框架類,下列_____選項中的方法是這兩個類都有的。(D)A.addFirst(Objecto)B.getFirst()C.removeFirst()D.add(Objecto)10、關于集合框架特征,說法不正確的是_______。(A)A.Map集合中的鍵對象不允許重復、B.有序List集合中的元素允許重復、C.有序Set集合中的元素不允許重復D.無序Collection集合中的元素允許重復、無序11、下列不是Map接口中的方法的是__________。(B)A.clear()B.peek()C.get(Objectkey)D.remove(Objectkey)12、下列關于Iterator接口說法錯誤的是_________。(C)A.Iterator接口是Collection接口的父接口從JDK5開始,B.所有實現了Iterable的集合類都是可迭代的,C.都支持foreach循環遍歷D.可以通過hasNext()方法獲取下一個元素remove()方法移除迭代器返回的最后一個元素期末考試題:一、選擇題1.Java開發工具包為(C)A.JREB.SDKC.JDKD.RunTime2.Java的集成開發環境為(A)A.EclipseB.SqlC.DevelopterD.JDKRunTime3.Java編譯后的文件是一個以()為后綴的文件(B)A.javaB.classC.docD.exe4.下列java標識符,錯誤的是(D)A._sys_varlB.$changeC.User_nameD.1_file5.下列不屬于簡單數據類型的是(B)A.整數類型B.字符串類型C.符點數類型D.布爾類型6.下列聲明和賦值語句錯誤的是A.doublew=3.1415B.Stringstrl=”bye”C.floatz=6.74567D.booleantruth=true7.下列不屬于整型變量的類型是(C)A.byteB.shortC.floatD.long8.關于while和do-while循環,下列說法正確的是???A.兩種循環除了格式不通外,功能完全相同B.與do-while語句不通的是,while語句的循環至少執行一次C.do-while語句首先計算終止條件,當條件滿足時,才去執行循環體中的語句D.以上都不對9.下來可以用來獲取數組長度的是(B)A.sizeB.lengthC.length()D.size()10.下來可以用來換行輸出的是(B)A.printB.printlnC.printcD.printd11.如果方法沒有返回值應該用哪個來表示(A)A.voidB.nullC.emptyD.no12.方法通過哪個關鍵字表示返回值(B)A.homeB.returnC.breakD.back13.Java語言中,||表示(B)A.分隔符B.或C.與D.非14.Java語言中,雙精度浮點型用表示(D)A.floatB.intC.doubleD.boolean15.不是Java語言的關鍵字的是(D)A.returnB.ifC.caseD.on二、判斷題1.判斷兩個字符串是否相等,可以用兩個等號來判斷。(B)A.正確B.錯誤2.String是基本數據類型。(B)A.正確B.錯誤3.這種寫法是正確的,charc=“A”。(B)A.正確B.錯誤4.System.out.print()表示換行輸出。A.正確B.錯誤5.b=a++和b=++a表示的含義是不一樣的。(A)A.正確B.錯誤6.&表示邏輯運算符與。(B)A.正確B.錯誤7.continue表示退出本次循環,進行下一次循環。(A)A.正確B.錯誤8.類是一種抽象的數據類型,是具備某些共同特征的實體的集合。(A)??A.正確B.錯誤9.對象是類的實例,包含屬性和方法。A.正確B.錯誤10.方法分為有參數的方法和無參數的方法。A.正確B.錯誤三、填空題1.在JAVA語言中,將后綴名為_.java______的源代碼文件編譯后形成后綴名為_____.class_______的字節碼文件2.boolean型常量只有__true___________和______false_______兩個值。3.浮點型數據分為float和____double________兩種類型4.方法沒有返回值,用____void________表示,Java通過___new_________關鍵字創建對象5.跳轉語句分別用到____if______,_____else_______,____________三個關鍵字。在空格處填入正確地程序語言(本題共有15分)1. 在下面這個類中,定義一個公共的帶兩個參數的方法,參數的數據類型為double,參數名稱為a,b方法名稱為add,計算兩個參數相加的結果,并且將結果返回,返回值的數據類型為doublepublicclassJisuanqi{publicdoubleadddoublea,doubleb___________________________(_________________,____________________){a+bdoublec=____________;return____________c;}}在空格處填入正確的程序語言(本題共有15分)2.在下面這個類中,定義一個公共的無參函數,無返回值的方法,方法名稱為test,在這個方法中用,上一題中的方法,計算10和10相加的結果,并且將結果乘以10之后賦值給c,將c的結果在控制臺輸出publicclassTest{public_____void_______test(){//創建上一題的類的對象_____Jisuanqi_______j=___newJisuanqi()_________;//調用上一題中定義的方法doublec=_____add(10,10)_______;__System______.out.println(____c________);}}四、程序判斷題分析下列代碼,指出該程序是否可以編譯通過,如有錯誤,請寫出具體錯誤。01publicclassTest{02 privateintt;0304 publicstaticvoidmain(String[]args){05 intx;06 System.out.println(t);07 }08}分析下列代碼,指出該程序是否可以編譯通過,如有錯誤,請寫出具體錯誤。01publicclassTest{02publicstaticvoidmain(Stri

溫馨提示

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

評論

0/150

提交評論