SUN國際認證試題及答案

來源:文萃谷 2.14W

作為一個IT工作人員,你有考過SUN認證嗎?下面yjbys小編為大家分享最新的SUN國際認證考試題及答案,希望對大家的學習有所幫助!

SUN國際認證試題及答案

h of the following fragments might cause errors?

A. String s = "Gone with the wind";

String t = " good ";

String k = s + t;

B. String s = "Gone with the wind";

String t;

t = s[3] + "one";

C. String s = "Gone with the wind";

String standard = perCase();

D. String s = "home directory";

String t = s - "directory";

answer:(BD)這道題考察java字符串和連接符+的理解,B中s[3]是一個字符,而不能和一個字符串用連接符連起來。而D則是我們初學java時以為有+必定有-,所以導致錯誤。java中的連接符只有一個就是+。而且字符串和字符是兩個不同的概念,我們要區分開來。

2. Given the following code fragment:

1) public void create() {

2) Vector myVect;

3) myVect = new Vector();

4) }

Which of the following statements are true?

A. The declaration on line 2 does not allocate memory space for the variable myVect.

B. The declaration on line 2 allocates memory space for a reference to a Vector object.

C. The statement on line 2 creates an object of class Vector.

D. The statement on line 3 creates an object of class Vector.

E. The statement on line 3 allocates memory space for an object of class Vector

answer:(ADE)這題考察獲得實例的.內存變化。定義一個實例並不能給對象分配內存空間,系統只給定義的那個變量分配空間。只有當new 出一個對象時系統回給一個實例對象分配內存空間。

3. Which are not Java keywords?

A. TRUE

B. sizeof

C. const

D. super

E. void

answer:(AB)sizeof是c++語言的的關鍵字,不是java的,我做題的時候覺得sizeof很熟悉,想當然以為它就是java的關鍵字,結果可想而知。

4. Which are not Java primitive(基本) types?

A. short

B. Boolean

C. unit

D. float

answer:(BC)java基本數據類型只有8個,而Boolean是引用數據類型。選錯了,關鍵是沒弄清primitive是什麼意思,汗顏啊,英語太差了。

5. Which statements about the garbage collection are true?

A. The program developer must create a thread to be responsible for free

the memory.

B. The garbage collection will check for and free memory no longer needed.

C. The garbage collection allow the program developer to explicity and

immediately free the memory.

D. The garbage collection can free the memory used java object at expect

time.

answer:(B)java垃圾自動回收機制,我們不能讓虛擬機什麼時候開始垃圾回收,垃圾回收是不受我們控制的,就算我們想要快點垃圾回收,我們只能通過一個gc()函數希望快點垃圾回收,但是程序回不回提前垃圾回收還是不知道的。所以選b。

6、Which of the following assignment is not correct?

A. float f = 11.1;

B. double d = 5.3E12;

C. double d = 3.14159;

D. double d = 3.14D.

answer:(A)記住基本數據類型中int和double都是默認的,所以a是錯的,把double轉換成float型要強制類型轉換。第一次碰到這樣的題的時候我全錯,不過現在好了。

7、Given the uncompleted code of a class:

class Person {

String name, department;

int age;

public Person(String n){ name = n; }

public Person(String n, int a){ name = n; age = a; }

public Person(String n, String d, int a) {

// doing the same as two arguments version of constructor

// including assignment name=n,age=a

department = d;

}

}

Which expression can be added at the "doing the same as..." part of the constructor?

A. Person(n,a);

B. this(Person(n,a));

C. this(n,a);

D. this(name,age).

answer:(C)這題有較大迷惑,要是不認真看,估計會選d,看看參數列表是n和a,如果選擇d的話就錯了。

8、public void test() {

try { oneMethod();

tln("condition 1");

} catch (ArrayIndexOutOfBoundsException e) {

tln("condition 2");

} catch(Exception e) {

tln("condition 3");

} finally {

tln("finally");

}

}

Which will display if oneMethod run normally?

A. condition 1

B. condition 2

C. condition 3

D. finally

answer:(AD)finally 修飾的最終都將會運行,所以當程序正常運行,不拋出異常時,AD都將運行。

9 Given the following code fragment:

1) String str = null;

2) if ((str != null) && (th() > 10)) {

3) tln("more than 10");

4) }

5) else if ((str != null) & (th() < 5)) {

6) tln("less than 5");

7) }

8) else { tln("end"); }

Which line will cause error?

A. line 1

B. line 2

C. line 5

D. line 8

answer:(C)&&和&的區別,&是按位與計算,&兩邊的運算都要執行;&&是邏輯運算,當左邊為假時,右邊可以不執行。當右邊執行時,可能有 (th()空指針異常)。

10、Given the following code:

public class Person{

static int arr[] = new int[10];

public static void main(String a[]) {

tln(arr[1]) ;

}

}

Which statement is correct?

A. When compilation some error will occur.

B. It is correct when compilation but will cause error when running.

C. The output is zero.

D. The output is null.

answer:(C)java數組默認初始化都為0.

熱門標籤