Java的五個基礎面試題

才智咖 人氣:5.47K

還在找Java的面試題目嗎,下面本站小編為大家蒐集的一篇“Java的五個基礎面試題”,供大家參考借鑑,希望可以幫助到有需要的朋友!

Java的五個基礎面試題

1. 將一個float 或 double 型別轉換為整型時,會四捨五入嗎?

2. 如果已經定義了構造方法 (無論是否有引數),編譯器還會建立預設的構造方法嗎?

3. this關鍵字可以在方法外邊用嗎?

4. java中的垃圾回收器只能釋放有new 分配的記憶體, 對嗎?

5. 用final修飾的變數,如果該變數在定義時沒有被初始化,還是否可以對它進行賦值?

答案:

1.答案:不會,將一個float 或 double 型別轉換為整型時,總是將小數部分砍掉

2.答案:如果在類中沒有構造方法,編譯器會自動建立一個預設的構造方法(無參構造方法),如果已經定義了構造方法 (無論是否有引數) 編譯器就不會在建立預設的構造方法。

3.答案:this 關鍵字只能在方法內部使用,表示“呼叫方法的那個物件的”引用,即表示對當前物件的引用。

4.答案:java中的垃圾回收器只能釋放有new 分配的記憶體,假設你的物件獲得了一塊非new分配的“特殊”記憶體區域,垃圾回收器不知道如何釋放該物件的這塊“特殊”的記憶體,為了應對這種情況,java中允許你在類中定義一個名為finalize()的方法。它的工作原理“應該”是這樣的:一旦垃圾回收器準備好釋放物件佔用的儲存空間,將首先呼叫其finalize()方法,並且在下一次垃圾回收動作發生時,才會真正回收物件佔有記憶體。

5.答案:可以,用final修飾的變數,如果該變數在定義時沒有被初始化,那麼就只能在構造方法中賦值,而且一旦賦值後就不能再被改變,final 修飾的變數沒有預設值。