gfdgfdgf
一、選擇題
1、關(guān)于super關(guān)鍵字以下說法哪些是不正確的?(?)
A.super關(guān)鍵字可以調(diào)用父類的構(gòu)造方法
B.super關(guān)鍵字可以調(diào)用父類的普通方法
C.super與this不能同時存在于同一個構(gòu)造方法中
D.super與this可以同時存在于同一個構(gòu)造方法中
2、一個具體類實現(xiàn)接口時,需要重寫接口中的( ?)
A.默認方法 ??B.局部變量 ???C.抽象方法 ?????D.類方法
3、在類的繼承關(guān)系中,需要遵循以下哪個繼承原則?(??)
A.多重 B.單一C.雙重 ?D.不能繼承
4、類中的一個成員方法被下面哪個修飾符修飾,該方法只能在本類被訪問?( ?)
A.public ??B.protected ??C.private ??D.default
5、下列關(guān)于throws關(guān)鍵字的說法中,錯誤的是()
A、throws關(guān)鍵字用于拋出異常
B、可以使用throws關(guān)鍵字一次拋出多種類型的異常
C、使用throws關(guān)鍵字拋出的異常,后續(xù)調(diào)用者在使用時無需處理
D、使用throws關(guān)鍵字拋出異常后,程序可以編譯通過
6、在Java中,要想讓一個類繼承另一個類,可以使用以下哪個關(guān)鍵字?(??)
A.inherits ??B.implements ??C.extends ???D.modifies
7、現(xiàn)有兩個類A、B,以下描述中表示B繼承自A的是( )
A.class A extends B??????B.?class B implements A
C.class A implements B ??D. class B extends A
8、下列關(guān)于繼承的描述中,錯誤的是(?)
A.在Java中,類只支持單繼承,不允許多重繼承,也就是說一個類只能有一個直接父類
B.多個類可以繼承一個父類
C.在Java中,多層繼承是可以的,即一個類的父類可以再去繼承另外的父類,例如C類繼承自B類,而B類又可以去繼承A類,這時,C類也可稱作A類的子類
D.Java是支持多繼承的
9、下面哪個選項可以獲取Runtime類的實例(?)
A.Runtime r = new Runtime();
B.Runtime r = Runtime.getRuntime();
C.Runtime r = Runtime.getInstance();
D.以上選項都不能獲取Runtime實例
10、StringBuffer類的append()方法的返回值類型是(?)
A. String ?B.void ??C.StringBuffer ??D.StringBuilder
11、下列選項中,對Math.random()方法描述正確的是(??)
A.返回一個不確定的整數(shù)
B.返回0或是1
C.返回一個隨機的double類型數(shù),該數(shù)大于等于0.0小于1.0
D.返回一個隨機的int類型數(shù),該數(shù)大于等于0.0小于1.0
12.下列是Random類的一些常用方法,其中能獲得指定范圍隨機數(shù)的方法是( )
A、nextInt()
B、nextLong()
C、nextBoolean()
D、nextInt(int n)
13、已知String s="abcdefg",則s.substring(2,5)的返回值為(?)
A."bcde"?????B."cde"?????C."cdef"????????D."def"
14、以下都是Math類的常用方法,其中用于計算絕對值的方法是哪?( ?)
A.ceil() B.floor() C.abs() D.random()
15、下面哪個方法可以實現(xiàn)獲取字符在某個字符串中第一次出現(xiàn)的索引(?)
A.charAt(int index)
B.?indexOf(int ch)
C.lastIndexOf(int ch)
D.endsWith(String suffix)
16、System類的getProperties()方法的作用是( )
A.獲取當前的操作系統(tǒng)的屬性
B.獲取當前JVM的屬性
C.獲取指定鍵指示的操作系統(tǒng)屬性
D.獲取指定鍵指示的JVM的屬性
17、下列方法中可以用于往HashSet集合中添加元素的是(?)
A.add(Ee)
B.contains(Objecto)
C.clear()
D.iterator()
18、以下關(guān)于foreach的說法中,哪一個是錯誤的(?)
A.使用foreach遍歷集合時,可以對元素進行修改。
B、foreach可以對數(shù)組進行遍歷。
C、foreach可以對集合進行遍歷。
D、foreach循環(huán)是一種更加簡潔的for循環(huán),也稱增強for循環(huán)。
19.使用Iterator時,判斷是否存在下一個元素可以使用以下哪個方法?(V
A.next()
B.hash()
C.hasPrevious()
D.hasNext
20.要想在集合中保存沒有重復(fù)的元素并且按照一定的順序排列,可以使用以下哪個(??)集合
A.LinkedList
B.ArrayList
C.hashSet
D.TreeSet
二、判斷題(對的打“√”,錯的打“×”)
1.編譯異常如果產(chǎn)生了,要求我們在必須處理,要么捕獲,要么拋出。(?)
2.?StringBuffer類是可變對象,String類是不可變對象。(?)
3.如果一個方法要拋出多個異常,可以使用throws進行聲明。( )
4.當一個類的方法被final關(guān)鍵字修飾后,這個類的子類可以重寫該方法。( )
5.抽象方法必須定義在抽象類中,所以抽象類中的方法都是抽象方法。( )
6.?StringBuffer類和String類一樣,都是不可變對象。( )
7.Map接口是一種雙列集合,它的每個元素都包含一個鍵對象Key和值對象Value。( )
8.DateFormat是一個抽象類,不能被直接實例化。( )
9.String類的equals()方法和“= =”的作用是一樣的。( )
10.System.getProperties()方法可以獲取操作系統(tǒng)的屬性。( )
三、填空題
1.在定義方法時不寫方法體,這種不包含方法體的方法為【???】方法。
2、一個類如果實現(xiàn)一個接口,那么它就需要實現(xiàn)接口中定義的全部【??】,否則該類就必須定義成抽象類。
3、在程序,獲取字符串長度的方法是【】。
4、在程序中需要調(diào)用其靜態(tài)方法【 ????】來得到一個Calendar對象。
5、JAVA中 int類型對應(yīng)的包裝類是【 ?????】。
6、在使用Calendar.MONTH字段時,月份的起始值是從【???】開始的。
7、Collections集合工具類位于【??】包中
8、【???】循環(huán)是一種更加簡潔的for循環(huán),也成增強for循環(huán),其用來遍歷數(shù)組或集合中的元素。
9、集合按照其存儲結(jié)構(gòu)可以分為兩大類,即單列集合【 ??】和雙列集合【 ???】。
10、Map中的映射關(guān)系是【 ?????】的。
三.程序題
1、設(shè)計一個Shape接口和它的兩個實現(xiàn)類Square和Circle。要求如下:
(I)Shape接口中有一個抽象方法area(),方法接收有一個double類型的參數(shù),返回double類型的結(jié)果。
(2)Square和Circle中實現(xiàn)了Shape接口的area()抽象方法,分別求正方形和圓形的積并返回。
在測試類中創(chuàng)建Square和Circle對象,計算邊長為2的正方形面積和半徑為3的圓形積。
2、請編寫一個StringDemo類,在主方法中實例化String類,初始化值為”itcast”,輸出String初始化值。
利用Random類產(chǎn)生5個20-30之間的隨機整數(shù)。