ava語言是由類和物件組成的,其物件和類又是由變數和方法組成,而方法,又包含了語句和表示式。本文是本站小編搜尋整理的關於Java中基本語法常見面試題12個,給大家做個參考,希望對大家有所幫助!想了解更多相關資訊請持續關注我們應屆畢業生考試網!
1、&和&&的區別
2、switch
switch語句能否作用在byte,能否作用在long上,能否作用在String上,還能用在哪裡?
switch支援的型別是byte,short,char,int。本質上說,switch僅僅只能支援int型別.(byte,short,char,會自動提升為int型別),所以,switch不支援long型別
3、final
使用final關鍵字修飾一個變數時,是引用不能變,還是引用的物件不能變
4、"=="和"equals"方法究竟有什麼區別
5、Overload和Override的區別
Overload是方法過載, Override是方法重寫,兩者除了名字比較像外,沒啥關係
6、構造器Constructor是否可被override
構造器Constructor不能被繼承,因此不能重寫Override,但可以被過載Overload。
7、序列化介面的id有什麼用
序列化版本的控制.物件序列化到儲存裝置上,資料和原始類結構之間就沒有了必然的聯絡,他們聯絡的依據就是類的全限定名.那麼程式碼中類的結構是可以改的,採用序列化id來作為一個版本的控制,當類的結構發生變化時,我們就改變序列化的id版本值,在反序列化的時候,對比序列化檔案的型別的版本號是否和當前型別的版本號相同,如果相同,則反序列化,如果不同,則報錯.
8、hashCode方法的作用
1.一般來說,equals這個方法是給使用者呼叫的,如果你想判斷2個物件是否相等,你可以重寫equals方法,然後在程式碼中呼叫,就可以判斷他們是否相等了.
Code方法一般使用者不會去呼叫,比如在HashMap中,由於key是不可以重複的,他在判斷key是否重複的時候就判斷了hashCode這個方法,而且也用到了equals方法,這裡說的不重複是說hashCode和equals只要有一個不等就可以了.所以簡單來說,hashCode相當於一個物件的編碼,就好像檔案中的md5,他和equals不同就在於他返回的是int型的,比較起來不直觀,我們一般重寫equals的同時也重寫hashCode,讓他們邏輯一致
9、Java中多型的機制是什麼
靠的是父類或介面定義的引用變數可以指向子類或具體實現類的.例項物件,而程式呼叫的方法在執行時才動態繫結,引用變數所指向的具體例項物件的方法,也就是記憶體里正在執行的那個物件的方法,而不是引用變數型別中定義的方法.
10、介面和抽象類的區別
11、JDK中哪些類是不能被繼承的
被final修飾的類是不能被繼承的
八大基本資料型別包裝類和String等
12、final, finally, finalize的區別