- 相關推薦
SUN認證考試面試題
SUN認證是給網絡設計界建立的一套認證標準,Sun公司推出了Java以及Solaris技術認證方案。以下是小編整理的關于SUN認證考試面試題,希望大家認真練習!
1.Which 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 = s.toUpperCase();
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();
System.out.println("condition 1");
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("condition 2");
} catch(Exception e) {
System.out.println("condition 3");
} finally {
System.out.println("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) && (str.length() > 10)) {
3) System.out.println("more than 10");
4) }
5) else if ((str != null) & (str.length() < 5)) {
6) System.out.println("less than 5");
7) }
8) else { System.out.println("end"); }
Which line will cause error?
A. line 1
B. line 2
C. line 5
D. line 8
answer:(C)&&和&的區別,&是按位與計算,&兩邊的運算都要執行;&&是邏輯運算,當左邊為假時,右邊可以不執行。當右邊執行時,可能有 (str.length()空指針異常)。
10、Given the following code:
public class Person{
static int arr[] = new int[10];
public static void main(String a[]) {
System.out.println(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.
11、Given the following code:
public class Person{
int arr[] = new int[10];
public static void main(String a[]) {
System.out.println(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:(A)這道題看起來跟前一個題一樣,但是仔細看的話這次的數組沒有聲明為static,所以靜態main方法不能直接調用,所以編譯時會有錯誤。
12、Which fragments are correct in Java source file?
A. package testpackage;
public class Test{//do something...}
B. import java.io.*;
package testpackage;
public class Test{// do something...}
C. import java.io.*;
class Person{// do something...}
public class Test{// do something...}
D. import java.io.*;
import java.awt.*;
public class Test{// do something...}
answer:(ACD)關于包的引用等。包必須在impotr的前面,既是包在最上面?梢詻]有包的聲明。
13:String s= "hello";
String t = "hello";
char c[] = {h,e,l,l,o} ;
Which return true?
A. s.equals(t);
B. t.equals(c);
C. s==t;
D. t.equals(new String("hello"));
E. t==c.
answer:(ACD)這是String,s和t沒有new 所以只是聲明了兩個變量,ACD都正確。
14、public class Parent {
public int addValue( int a, int b) {
int s;
s = a+b;
return s;
}
}
class Child extends Parent {
}
Which methods can be added into class Child?
A. int addValue( int a, int b ){// do something...}
B. public void addValue (){// do something...}
C. public int addValue( int a ){// do something...}
D. public int addValue( int a, int b )throws MyException {//do something...}
answer:(BC)涉及到方法的重寫和覆蓋,三同一不低,A是默認的,但是父類是public的,不滿足不低的原則?搭}要仔細。
【SUN認證考試面試題】相關文章:
SUN認證考試科目10-21
SUN認證考試流程10-14
SUN認證考試簡介07-14
sun認證考試的作用07-21
Sun認證考試類型08-18
SUN認證考試項目08-23
sun java認證考試介紹10-23
Sun java認證考試答案11-06
Sun Java認證考試科目08-30
SUN認證考試流程詳細10-10