- 相關(guān)推薦
Java中基本語法常見面試題12個(gè)
ava語言是由類和對象組成的,其對象和類又是由變量和方法組成,而方法,又包含了語句和表達(dá)式。本文是百分網(wǎng)小編搜索整理的關(guān)于Java中基本語法常見面試題12個(gè),給大家做個(gè)參考,希望對大家有所幫助!想了解更多相關(guān)信息請持續(xù)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!
1、&和&&的區(qū)別
2、switch
switch語句能否作用在byte,能否作用在long上,能否作用在String上,還能用在哪里?
switch支持的類型是byte,short,char,int。本質(zhì)上說,switch僅僅只能支持int類型.(byte,short,char,會自動提升為int類型),所以,switch不支持long類型
3、final
使用final關(guān)鍵字修飾一個(gè)變量時(shí),是引用不能變,還是引用的對象不能變
4、"=="和"equals"方法究竟有什么區(qū)別
5、Overload和Override的區(qū)別
Overload是方法重載, Override是方法重寫,兩者除了名字比較像外,沒啥關(guān)系
6、構(gòu)造器Constructor是否可被override
構(gòu)造器Constructor不能被繼承,因此不能重寫Override,但可以被重載Overload。
7、序列化接口的id有什么用
序列化版本的控制.對象序列化到存儲設(shè)備上,數(shù)據(jù)和原始類結(jié)構(gòu)之間就沒有了必然的聯(lián)系,他們聯(lián)系的依據(jù)就是類的全限定名.那么代碼中類的結(jié)構(gòu)是可以改的,采用序列化id來作為一個(gè)版本的控制,當(dāng)類的結(jié)構(gòu)發(fā)生變化時(shí),我們就改變序列化的id版本值,在反序列化的時(shí)候,對比序列化文件的類型的版本號是否和當(dāng)前類型的版本號相同,如果相同,則反序列化,如果不同,則報(bào)錯(cuò).
8、hashCode方法的作用
1.一般來說,equals這個(gè)方法是給用戶調(diào)用的,如果你想判斷2個(gè)對象是否相等,你可以重寫equals方法,然后在代碼中調(diào)用,就可以判斷他們是否相等了.
2.hashCode方法一般用戶不會去調(diào)用,比如在HashMap中,由于key是不可以重復(fù)的,他在判斷key是否重復(fù)的時(shí)候就判斷了hashCode這個(gè)方法,而且也用到了equals方法,這里說的不重復(fù)是說hashCode和equals只要有一個(gè)不等就可以了.所以簡單來說,hashCode相當(dāng)于一個(gè)對象的編碼,就好像文件中的md5,他和equals不同就在于他返回的是int型的,比較起來不直觀,我們一般重寫equals的同時(shí)也重寫hashCode,讓他們邏輯一致
9、Java中多態(tài)的機(jī)制是什么
靠的是父類或接口定義的引用變量可以指向子類或具體實(shí)現(xiàn)類的實(shí)例對象,而程序調(diào)用的方法在運(yùn)行時(shí)才動態(tài)綁定,引用變量所指向的具體實(shí)例對象的方法,也就是內(nèi)存里正在運(yùn)行的那個(gè)對象的方法,而不是引用變量類型中定義的方法.
10、接口和抽象類的區(qū)別
11、JDK中哪些類是不能被繼承的
被final修飾的類是不能被繼承的
八大基本數(shù)據(jù)類型包裝類和String等
12、final, finally, finalize的區(qū)別
【Java中基本語法常見面試題12個(gè)】相關(guān)文章:
java語法基本編程10-08
Java語言基本語法09-19
Java基礎(chǔ)語法面試題10-28
Java基本語法編程練習(xí)題06-14
java常見的語法錯(cuò)誤有哪些09-20
Java語法基礎(chǔ)中的for語句練習(xí)09-27