華為的JAVA筆試題
一、 單項選擇題
1.Java是從( )語言改進重新設計。
A.Ada B.C++ C.pasacal D.BASIC
答案:B
2.下列語句哪一個正確( )
A. Java程式經編譯後會產生machine code
B. Java程式經編譯後會產生byte code
C. Java程式經編譯後會產生DLL
D. 以上都不正確
答案:B
3.下列說法正確的有( )
A. class中的constructor不可省略
B. constructor必須與class同名,但方法不能與class同名
C. constructor在一個物件被new時執行
D. 一個class只能定義一個constructor
答案:C
4.提供Java存取資料庫能力的包是( )
A.java.sql B.java.awt C.java.lang D.java.swing
答案:A
5.下列運算符合法的是( )
A.&& B.<> C.if D.:=
答案:A
6.執行如下程式程式碼
a=0;c=0;
do{
--c;
a=a-1;
}while(a>0);
後,C的值是( )
A.0 B.1 C.-1 D.死迴圈
答案:C
7.下列哪一種敘述是正確的( )
A. abstract修飾符可修飾字段、方法和類
B. 抽象方法的body部分必須用一對大括號{ }包住
C. 宣告抽象方法,大括號可有可無
D. 宣告抽象方法不可寫出大括號
答案:D
8.下列語句正確的是( )
A. 形式引數可被視為local variable
B. 形式引數可被欄位修飾符修飾
C. 形式引數為方法被呼叫時,真正被傳遞的引數
D. 形式引數不可以是物件
答案:A
9.下列哪種說法是正確的( )
A. 例項方法可直接呼叫超類的例項方法
B. 例項方法可直接呼叫超類的類方法
C. 例項方法可直接呼叫其他類的例項方法
D. 例項方法可直接呼叫本類的類方法
答案:D
二、 多項選擇題
1.Java程式的種類有( )
A.類(Class) B.Applet C.Application D.Servlet
2.下列說法正確的有( )
A. 環境變數可在編譯source code時指定
B. 在編譯程式時,所能指定的環境變數不包括class path
C. javac一次可同時編譯數個Java原始檔
D. javac.exe能指定編譯結果要置於哪個目錄(directory)
答案:BCD
3.下列識別符號不合法的有( )
A.new B.$Usdollars C.1234 D.car.taxi
答案:ACD
4.下列說法錯誤的有( )
A. 陣列是一種物件
B. 陣列屬於一種原生類
C. int number=[]={31,23,33,43,35,63}
D. 陣列的大小可以任意改變
答案:BCD
5.不能用來修飾interface的有( )
A.private B.public C.protected D.static
答案:ACD
6.下列正確的有( )
A. call by value不會改變實際引數的數值
B. call by reference能改變實際引數的參考地址
C. call by reference不能改變實際引數的參考地址
D. call by reference能改變實際引數的內容
答案:ACD
7.下列說法錯誤的有( )
A. 在類方法中可用this來呼叫本類的類方法
B. 在類方法中呼叫本類的類方法時可直接呼叫
C. 在類方法中只能呼叫本類中的類方法
D. 在類方法中絕對不能呼叫例項方法
答案:ACD
8.下列說法錯誤的有( )
A. Java面嚮物件語言容許單獨的過程與函式存在
B. Java面嚮物件語言容許單獨的方法存在
C. Java語言中的方法屬於類中的成員(member)
D. Java語言中的.方法必定隸屬於某一類(物件),呼叫方法與過程或函式相同
答案:ABC
9.下列說法錯誤的有( )
A. 能被java.exe成功執行的java class檔案必須有main()方法
B. J2SDK就是Java ApI
C. Appletviewer.exe可利用jar選項執行.jar檔案
D. 能被Appletviewer成功執行的java class檔案必須有main()方法
答案:BCD
三、 判斷題
1.Java程式中的起始類名稱必須與存放該類的檔名相同。( )
答案:正確
2.Unicode是用16位來表示一個字的。( )
答案:正確
3.原生類中的資料型別均可任意轉換。( )
答案:錯誤
(後記:沒有想到華為的面試題就是非同一般,很多題不是一眼就能夠看得出來,至少對我這種鳥來說是這樣。對我個人來說,看看這樣的題,可能比看《Think In Java》都還要好,因為這裡面有很多的東西,都是我們平時沒有太在意,或者是隻是懂一點皮毛而已,透過做一下這樣的練習,把自己不知道、不熟悉的知識點,利用這個機會好好的鞏固一下。這些答案是我自己做的,有一些是從網上來的,有一部是自己做的,並且還有一部份沒有做完,我不敢保證都對,所以請你在引用的時候,務必透過自己核對一下。當然,我既然能夠把這些答案放在這裡,那說明我肯定是自己檢驗了一遍的,也不是那麼恐怖的)foo(A); foo(B) && (i < 2);foo(C)) { i++;foo(D); } } }QUESTION NO: 31. class A { 2. protected int method1(int a, int b) { return 0; } 3. } Which two are valid in a class that extends class A? (Choose two) A. public int method1(int a, int b) { return 0; } B. private int method1(int a, int b) { return 0; } C. private int method1(int a, long b) { return 0; } D. public short method1(int a, int b) { return 0; } E. static protected int method1(int a, int b) { return 0; }publicclassBextendsA{ //can not reduce the visibility of the inherited method from A //即不能夠使從類A中繼續來的方法的可見性降低 //private int method1(int a, int b) { return 0; } //This static method cannot hide the instance method from A //靜態方法不能夠隱藏繼承於A的例項 //static protected int method1(int a, int b) { return 0; } //返回型別與A中的該方法不一致 //public short method1(int a, int b) { return 0; } //這裡是寫了一個過載方法,因為引數型別不一致,不會報錯privateintmethod1(int a, long b) { return0; } //可見性可以增大,但是不能夠縮小,正確publicintmethod1(int a, int b) { return0; }publicstaticvoidmain(String[] args) { // TODO Auto-generated method stub } }QUESTION NO: 41. public class Outer{ 2. public void someOuterMethod() { 3. // Line 3 4. } 5. public class Inner{} 6. public static void main( String[]argv ) { 7. Outer o = new Outer(); 8. // Line 8 9. } 10. } Which instantiates an instance of Inner? A. new Inner(); // At line 3 B. new Inner(); // At line 8 C. new o.Inner(); // At line 8 D. new Outer.Inner(); // At line 8//new Outer().new Inner() 答案如下:publicclassOuter {publicvoidsomeOuterMethod() { // Line 3new Inner();//放在這裡不出錯 }publicclassInner { }publicstaticvoidmain(String[] argv) { Outer o= new Outer(); // Line 8 //o不能夠被解釋成為一種型別,出錯 //new o.Inner(); //new Outer.Inner(); //new Inner(); } }QUESTION NO: 5Which method is used by a servlet to place its session ID in a URL that is written to the servlet’s response output stream? (譯:那個方法是servlet用於將其session ID入在一個URL中,該URL寫入servlet的響應輸出流) A. The encodeURL method of the HttpServletRequest interface. B. The encodeURL method of the HttpServletResponse interface. C. The rewriteURL method of the HttpServletRequest interface. D. The rewriteURL method of the HttpServletResponse interface.QUESTION NO: 6Which two are equivalent? (Choose two) A. <%=>