1.不能透過建構函數也能建立物件嗎()
A. 是 (建議學習: java面試題大匯總)
B. 否
分析:答案:A
Java創建物件的幾種方式(重要) :
(1) 用new語句建立對象,這是最常見的建立對象的方法。
(2) 運用反射手段,呼叫java.lang.Class或
java.lang.reflect.Constructor類別的newInstance()實例方法。
(3) 呼叫物件的clone()方法
(4) 運用反序列化手段,呼叫java.io.ObjectInputStream物件的 readObject()方法。
(1)和(2)都會明確的明確的呼叫建構子;(3)是在記憶體上對已有物件的影印,所以不會呼叫建構函式;(4)是從文件中還原類別的對象,也不會呼叫建構函數。
(1)和(2)都會明確的明確的呼叫建構子;(3)是在記憶體上對已有物件的影印,所以不會呼叫建構函式;(4)是從文件中還原類別的對象,也不會呼叫建構函數。
2.以下哪些是對稱加密演算法()
A. DES
B. MD5
C. DSA
D. RSA
分析:答案:A
#分析:常用的對稱加密演算法有:DES、3DES、RC2、RC4、AES
常用的非對稱加密演算法有:RSA、DSA、ECC
使用單向雜湊函數的加密演算法:MD5、SHA
3.下面的程式碼段,當輸入為2的時候回傳值是()
public static int get Value(int i){ int result=0; switch(i){ case 1: result=result +i case 2: result=result+i*2 case 3: result=result+i*3 } return result; }
A. 0
B. 2
C. 4
D. 10
答案:C
分析:result = 0 2 * 2;
4.以下Java程式碼段會產生幾個對象
public void test(){ String a="a"; String b="b"; String c="c"; c=a+""+b+""+c; System.out.print(c); }
分析:答案: 一個對象,因為編譯期進行了最佳化,3個字串常數直接折疊為一個
5.Math.round( -11.2)的運行結果是。
#: -11
分析:小數點後第一位=5
#正數:Math.round(11.5)=12
#負數:Math.round(-11.5)=-11
小數點後第一位4ca2fb04f361d410c5019c4945cc5f2d5
正數:Math.round(11.68)=12
#負數:Math.round(-11.68)=-12
根據上面例子的運行結果,我們還可以按照如下方式總結,或許更加容易記憶:
參數的小數點後第一位6a8b2862b410736593846e38e1458af95,運算結果為參數整數部分絕對值 1,符號(即正負)不變。
參數的小數點後第一位=5,正數運算結果為整數部分 1,負數運算結果為整數部分。
結束:大於五全部加,等於五正數加,小於五全不加。
6.Java中int.long佔用的位元組數分別是
#分析:
1:「字節」是byte,「位」是bit ;
2: 1 byte = 8 bit ;
char 在Java中是2個位元組。 java採用unicode,2個位元組(16位元)來表示一個字元。
short 2個位元組
int 4個位元組
#long 8個位元組
System.out.println('a' 1) ;的結果是
分析:'a'是char型,1 是int行,int與char相加,char會被強轉為int行,char的ASCII碼對應的值是97,所以加一起列印98
7.下列語句那一個正確()
A. java程式經編譯後會產生machine code
##B. java程式經過編譯後會產生byte codeC. java程式經過編譯後會產生DLLD. 以上都不正確##答案:B分析:java程式編譯後會產生字節碼檔,就是.class檔
8.下列敘述正確的有()#A.class中的constructor不可省略
B. constructor必須與class同名,但方法不能與class同名
C. constructor在一個物件被new時執行
#D. 一個class只能定義一個constructor
答案:C#9.執行如下程式碼()
a=0;c=0;
do{
——c;
a=a-1;
}while(a>0);
後,c的值是()
A. 0
B. 1
#C. -1
##D. 死迴圈
答案:C
do{...}while(...);語句至少執行一次
10.下列哪一個敘述是正確的()
A. abstract修飾詞可修飾欄位、方法和類別
B. 抽象方法的body部分必須用一對大括號{}包住C. 宣告抽象方法,大括號可有可無D. 宣告抽象方法不可寫出大括號答案:D
分析: abstract不能修飾欄位。既然是抽象方法,當然是沒有實作的方法,根本就沒有body部分。
11.下列語句正確的是()
A. 形式參數可視為local variable
B. 形式參數可被字段修飾符修飾
C. 形式參數為方法被呼叫時,真正被傳遞的參數
D. 形式參數不可以是物件
答案A:
分析:
A:形式參數可視為local variable。形參和局部變數一樣都不能離開方法。都只有在方法內才會發生作用,也只有在方法中使用,不會在方法外可見。
B:對於形式參數只能用final修飾符,其它任何修飾符都會造成編譯器錯誤。但是用這個修飾符也有一定的限制,就是在方法中不能對參數做任何修改。不過一般情況下,一個方法的形參不用final修飾。只有在特殊情況下,那就是:方法內部類別。一個方法內的內部類別如果使用了這個方法的參數或局部變數的話,這個參數或局部變數應該是final。
C:形參的值在呼叫時會根據呼叫者更改,實參則用自身的值更改形參的值(指標、引用皆在此列),也就是說真正被傳遞的是實參。
D:方法的參數清單指定要傳遞給方法什麼樣的訊息,採用的都是物件的形式。因此,在參數清單中必須指定每個所傳遞物件的類型及名字。想JAVA中任何傳遞物件的場合一樣,這裡傳遞的實際上也是引用,而引用的類型必須正確。
以上是java筆試題大全帶答案(經典11題)的詳細內容。更多資訊請關注PHP中文網其他相關文章!