初級java程式設計師面試題筆試題
第一題:判斷題
1.Java語言是一種面向物件程式設計語言。( 對 )
2.在Java有布林型別,該型別只能有兩個值:1和0。( 錯 )
3.Java中一個類可以同時繼承多個其他類,但只能實現一個介面。( 錯 )
4.在Java中字串的長度和字串中字元的個數是相等的。( 對 )
5.程式中的異常是錯誤的一種,透過除錯程式可以解決異常。( 錯 )
6.使用Java語言既可以讀寫二進位制檔案,又可以讀寫文字檔案。( 對 )
7.框架JFrame作為圖形使用者介面的頂級容器,原子元件是不能直接放置到框架的。( 錯 )
8.當最小化小程式時就會呼叫小程式的stop()方法,暫時釋放所佔資源。( 對 )
9.除錯Java程式也就是執行Java程式,使用java命令即可完成。( 錯 )
10.執行緒就是程式,只不過是程式碼較少。( 錯 )
第二題:選擇題
以下對Java語言描述不正確的是(C )
A Java語言是一個完全面對物件的語言
B Java是結構獨立、與平臺無關的語言
C Java是一種編譯性語言
D Java是一種解釋性語言
以下說法正確的是(C )
A Java程式檔名必須是和程式檔案中定義的型別一致
B Java程式檔名可以和程式檔案中定義的類名不一致
C Java源程式檔案的副檔名必須是.java
D以上A、C說法正確,B說法不正確
以下有關執行Java應用程式(Application)正確的說法是(B )
A Java應用程式是由Java編譯器解釋執行的
B Java應用程式經編譯後生成的位元組程式碼可由Java虛擬機器解釋執行
C Java應用程式經編譯後可直接在作業系統下執行
D Java應用程式經編譯後可直接在瀏覽器中執行
4、以下有關識別符號說法中正確的是(C )
A、任何字元的組合都可以形成一個識別符號
B、Java的關鍵字也可以作為識別符號使用
C、識別符號是以字母、下劃線或$開頭,後跟字母、數字、下劃線或$的字元組合
D、識別符號是不分大小寫
5、以下說法正確的是(D )
A、基本字元資料型別有字元和字串兩種
B、字元型別佔兩個位元組,可儲存兩個字元
C、字元型別佔兩個位元組,可儲存一個字元
D、以上說法都是錯誤的
6、以下有關型別轉變的說法錯誤的是(D )
A、低精度型別向高精度型別轉換時,不會丟失資料精度
B、系統會自動進行(整型或浮點型)低精度型別資料向高精度型別資料的轉換
C、高精度型別資料向低精度型別資料的轉換、整型和浮點型資料之間的轉換,必須強制進行,有可能會引起資料丟失
D、高精度型別資料向低精度型別轉換時,也不會丟失資料精度,因為轉換是系統進行的
7、以下正確的關係表示式(D )
A、x≥y B、x+yz C、>=x D、x+y!=z
8、以下正確的邏輯表示式( A)
A、(x+y>7)&&(x-y<1) B、!(x+y)
C、(x+y>7)||(z=a) D、(x+y+z)&&(z>=0)
9、以下有關條件運算子(?:)說法正確的是( D)
A、條件運算子是一個三元運算子,其格式是:表示式1?表示式2:表示式3
B、格式中的“表示式1”是關係或者邏輯表示式,其值是boolean值
C、若“表示式1”成立,該條件表示式取“表示式2”的值,否則取“表示式3”的值
D、以上說法都正確
10、在if(表示式)語句中,“表示式”的值必須是(C )
A、任意整數值 B、字串 C、布林邏輯值 D、非零值
11、在switch(表示式)語句中,“表示式”的值必須是(D )
A、整數值 B、字元值 C、布林邏輯值D、整數或字元值
12、下列關於for迴圈和while迴圈的說法中,正確的是(A )
A、while迴圈能實現的操作,for迴圈也能實現
B、while迴圈判斷條件一般是程式結果,for迴圈判斷條件一般是非程式結果
C、兩種迴圈任何時候都可以替換
D、兩種迴圈結構中必須都有迴圈體,迴圈體不能為空
13、下面表示式中,用來訪問陣列中的第一個值的是(C )
A、intArray[1] B、intArray.1 C、intArray[0]D、intArray.0
14下面的表示式中正確的是(C )
String s=”你好”;if(s==”你好”) System.out.println(true);
String s=”你好”;if(s!=”你好”) System.out.println(false);
String s=”你好”;if(s.equals(”你好”)) System.out.println(true);
String s=”你好”;if(equals(s,”你好”)) System.out.println(true);
15String str;System.out.println(str.length());以上語句的處理結果是(A )
A、編譯報錯 B、執行結果是null C、執行結果為0 D、隨機值
16、執行String [ ] s=new String[10];程式碼後,下面結論正確的是( D)
A、s[10]為”” B、s[10]為null
C、s[0]未定義 D、s.length為10
17、構造器(B )被呼叫。
A、類定義時 B、建立物件時
C、呼叫物件方法時 D、適用物件的變數時
18、Java中訪問限定符不包括( C)
A、public B、private C、default D、final
19、有關方法過載的正確說法是( AC)
A、方法的名稱一致,限定符不同 B、方法的名稱一致,限定符相同
C、方法的名稱一致,返回值不同 D、其他都一致,只有引數定義不同
20、如果任何包中的子類都能訪問超類中的成員,則使用的限定符是(A )
A、public B、private C、protected D、transient
21、有關繼承下面的說法正確的是( C)
A、繼承的主要目的是隱藏類的屬性
B、在Java中,一個類可以從多個類中繼承屬性和方法
C、繼承體現了事物的普遍性和特殊性
D、繼承允許子類繼承父類中的構造器
22、在下列事件處理機制中不是時間元件的是(C )
A、事件物件 B、事件源 C、介面 D、事件處理器
23、下面說法不正確的是( BD)
A、Java中執行緒是搶佔式的 B、Java中執行緒是分時式的
C、Java中的執行緒可以共享資料 D、Java中的`執行緒可以共享程式碼
24、下列關於Java執行緒的說法正確的是(D )
A、每一個Java執行緒由程式碼、一個真實的CPU以及資料3部分組成
B、建立執行緒的兩種方法中,從Thead類中繼承的建立方式可以防止出現多父類問題
C、Thead類屬於java.util程式包
D、以上說法都不正確
25、下面關鍵字用來處理Java執行時的錯誤的是( A)
A、try和catch塊 B、try、catch和finally塊
C、try塊和throw語句 D、throw語句和catch塊
26.一個Java源程式編譯後生成的檔案為Test.class,則執行該程式應該使用的命令為( C )。
(A)javac Test (B)javac Test.class
(C)java Test (D)java Test.class
27. 下面資料型別的定義中錯誤的是( C )。
(A)int a = 10; (B)double d = 1.2;
(C)float f = 1.2; (D)char c = ‘A’;
28. 類可以保護它的成員變數和成員函式不會被其他物件隨意訪問到,這一特性屬於類的( A )。
(A)封裝性 (B)繼承性
(C)多型性 (D)過載
29. 以下關於字串類的說法正確的是( B )。
(A)String類用於字串變數,而StringBuffer類用於字串常量
(B)String類用於字串常量,而StringBuffer類用於字串變數
(C)String類的物件只能用“new”關鍵字生成
(D)StringBuffer字串的容量是指字串中字元的個數
30. 在Java的異常處理語句中對finally的描述正確的是( A )。
(A)不管是否發生異常,finally中的程式都要執行
(B)只有不發生異常時,finally中的程式才需要執行
(C)只有異常發生時,finally中的程式才需要執行
(D)不管是否發生異常,finally中的程式都不會執行
31. 在子類的定義中有一個和父類同名的成員函式,這一現象稱為函式的( B )。
(A)繼承 (B)覆蓋
(C)錯誤 (D)過載
32. 下面哪種註釋能支援javadoc命令( C )。
(A)// (B)/*……*/
(C)/**……*/ (D)都能支援
33. 在Java中如果使正在執行的執行緒進入睡眠狀態,可以呼叫執行緒的哪一個方法。( B )
(A)wait() (B)sleep()
(C)stop() (D)notify()
34. 設有陣列的定義int[] a = new int[3],則下面對陣列元素的引用錯誤的是( D )。
(A)a[0];
(B)a[a.length-1];
(C)int i=1; a[i];
(D)int[2>1];
35. 關於被私有訪問控制符private修飾的成員變數,以下說法正確的是( C)
(A)可以被三種類所引用:該類自身、與它在同一個包中的其他類、在其他包中的該類的子類
(B)可以被兩種類訪問和引用:該類本身、該類的所有子類
(C)只能被該類自身所訪問和修改
(D)只能被同一個包中的類訪問
36. 下面哪個修飾符修飾的變數是所有同一個類生成的物件共享的( C )。
(A)public (B)private
(C)static (D)final
37. 下面哪個是對字串String的正確定義。( A )
(A)String s1=“null”;
(B)String s2=‘null’ ;
(C)String s3=(String)‘abc’ ;
(D)String s4=(String)‘uface’;
38. 給出一段程式,試判斷哪個是正確的結果。( D )
public class Test{
public static void main (String args[]){
try{ System.out.print(“Hello world ”); }
finally{System.out.println(“Finally executing”); }
}
}
(A)無法編譯執行,因為沒有指定異常
(B)無法編譯執行,因為沒有catch子句
(C)Hello world
(D)Hello world Finally executing
39. 下面哪項可以得到陣列元素的個數,java中定義陣列名為 abc。( B )。
(A)abc.length( ) (B)abc.length
(C)len(abc) (D)ubound(abc)
40、Applet類中的直接父類是(D )
A、Component類 B、Container類 C、Frame類 D