1. 程式人生 > >OCJP 1Z0-808考題超詳細解析(word文件) 題1--30

OCJP 1Z0-808考題超詳細解析(word文件) 題1--30

題目難度分類

個人對於題目難度的分類:難度總共五星

不理解題:   ★★★★★

閱讀理解題:  ★★★★

難點題: ★★★

套路題:      ★★★

基礎題/送分題:     ★

題目錯誤題: ★

 

1--10(完)

1.

難度:基礎題

解析:靜態成員變數在程式執行中只會維護一份。非靜態成員變數,每建立一個類就會維護一份。

 

 

2.

難度:基礎題

解析:

  • String型別的API,字串內容不能發生變化,一旦字串內容發生變化,都要返回新的String。本題toLowerCase()和concat()都導致了原來的字串內容變化了,所以不會在原來的物件上操作,而是返回新的String物件,本題沒有接收返回值。
  • String.substring(beginIndex, endIndex): 這裡下標的計算方式和陣列一樣,字串的第一個元素的下標是0。

 

 

3.

難度:閱讀理解題

解析:

  • 題目:

Which three are advantages(優勢,有利條件) of the Java exception mechanism(機制)?

 

A.Improves(改善) the program(程式) structure(結構) because the error handling code is separated(分離的) from the normal program function

B.Provides a set of standard(標準的) exceptions that covers all the possible(可能的) errors

C.Improves the program structure because the programmer can choose where to handle

exceptions

D.Improves the program structure because exceptions must be handled in the method in Which they occurred

E.Allows the creation of new exceptions that are tailored to the particular program being created

  • 翻譯:

A:改程序序結構,因為錯誤處理程式碼與正常程式功能分離

B:提供一組標準異常,覆蓋所有可能的錯誤。

C:改程序序結構,因為程式設計師可以選擇在何處處理異常。

D:改程序序結構,因為在它們發生的方法中必須處理異常。

E:允許建立特定於正在建立的特定程式的新異常。

 

  • 實際上:

B: 異常並沒有覆蓋所有的

D:異常可以丟擲,不是必須處理

 

 

4.

難度:難點題

解析:line n1: 這個類沒有無參的構造方法,所以編譯失敗

line n2:如果一個建構函式想呼叫另一個建構函式,需要是用this,不可以直接使用類名進行呼叫。

 

 

5.

難度:套路題

解析:選項B引數中的n3沒有宣告。

 

 

6.

難度:難點題

解析:jdk1.8新特徵LocalData的API用法

 

 

7.

難度:基礎題

解析:考查for迴圈體的格式。

 

 

8.

難度:難點題

解析:jdk1.8新特徵LocalData的API用法

 

 

9.

難度:基礎題

解析:B、D第二句程式碼,會使第一句程式碼無意義。E、判斷不合理。等同如下

if(qty>80){

discount=0.2;

}else{

if(qty>=90){

discount=0.5;

}else{

discount=0;

}

}

 

 

10.

難度:難點題

解析:A和C有誤。B能夠編譯。D將set方法設定為protect,降低了成員屬性被任意修改的機率,符合封裝的理念。

 

11--20(完)

11.

難度:基礎題

解析:略

 

 

12.

難度:不理解題

解析:正確答案應該是D。indexOf()返回此列表中首次出現的指定元素的索引,或如果此列表不包含元素,則返回 -1。查詢引用型別物件時,判斷是記憶體地址。

 

 

13.

難度:不理解題

解析:我不是很理解選項A,super.r=r為什麼錯誤。

 

 

14.

難度:閱讀理解題

解析:loop construct(迴圈體)   optional(可選的)   terminates(終止)

正確答案應為A、B。

 

 

15.

難度:閱讀理解題

解析:Which three statements are true about the structure(結構) of a Java class?

A. A class can have only one private constructor.

B. A method can have the same name as a field.

C. A class can have overloaded static methods.

D. A public class must have a main method.

E. The methods are mandatory(強制性的) components(元件) of a class.

F. The fields need not be initialized before use

正確答案應為B、C、F

 

16.

難度:不理解題

解析:記住答案。

 

 

17.

難度:基礎題

解析:略

 

 

18.

難度:不理解題

解析:個人認為正確答案應該是C、D。

 

 

19.

難度:基礎題

解析:== 判斷引用型別是判斷記憶體地址。String.equals()判斷的是字串的內容。

 

 

20.

難度:基礎題

解析:考察靜態和非靜態成員變數。

 

21--30(完)

21.

難度:基礎題

解析:正確答案應是D。Throwable常用的方法:

Throwable類

String

toString() 
   返回當前異常物件的完整類名+病態資訊(getmessage()的返回值)。

Throwable類

String

getMessage() 
   回的是建立Throwable傳入的字串資訊。

Throwable類

void

printStackTrace() 
   像控制檯輸出異常的棧資訊。

 

 

22.

難度:難點題

解析:正確答案應是C。三元運算子巢狀格式,詳見這篇部落格

https://blog.csdn.net/u012316120/article/details/52122556

 

 

23.

難度:難點題

解析:集合和陣列中有空值時,遍歷時不會出錯,如果拿空值去呼叫類的屬性,就會報空指標異常。空值輸出的是null。

 

 

24.

難度:基礎題

解析:略

 

 

25

難度:基礎題

解析:略

 

 

26.

難度:套路題

解析:此處while迴圈沒有迴圈體,i++不在迴圈體內,所以是死迴圈。

 

 

  1.  

難度:難點題

解析:記住:SercurityException和IllegalArgumentException是Java的異常類。

 

 

28.

難度:題目錯誤題

解析:上面的答案是錯的。正確輸出應為“A B C C ”。String的值是不可改變的,所有String的API一旦使值發生變化,都要返回一個新的String。 replace和concat方法呼叫者不會發生變化,變化的物件是返回值。

 

 

29.

難度:基礎題

解析:B錯誤。一個try塊可以捕獲多種異常的型別,但是捕獲的異常型別必須從小到大進行捕獲,否則編譯報錯。

 

 

30.

難度:閱讀理解題

解析:題意:一個方法被宣告為三個引數。程式呼叫此方法只傳遞了兩個引數。答案:A. Compilation fails.