Java后端面試題最新整理
我們學(xué)習(xí)java知識,除了要做基礎(chǔ)的程序運(yùn)行外,不可避免的要在面試中遇到一些理論的考察。有些小伙伴程序做的不錯(cuò),但是理論上面有所欠缺。這里小編整理了一些常見的后端面試題,希望能對小伙伴們有所幫助,下面一起看看吧。
一、八種基本數(shù)據(jù)類型的大小,以及他們的封裝類。
byte(Byte) 1 ,short(Short) 2 ,int(Integer) 4 ,long(Long) 8 ,float(Float) 4 ,double(Double)8,boolean(Boolean),char(Character)2
二、Switch能否用string做參數(shù)?
switch語句中的變量類型可以使byte,short,int,char。從jdk1.7后可以使用String類型,是通過switch中的String.hashcode將String轉(zhuǎn)換成int進(jìn)行判斷的。
三、equals與==的區(qū)別。
==操作符是用來比較兩個(gè)變量的值是否相等,即就是比較變量在內(nèi)存中的存儲(chǔ)地址是否相同,equals()方法時(shí)String類從Object類中繼承的,被用來檢測兩個(gè)對象的內(nèi)容是否相同。
四、String s=new String(‘xyz');創(chuàng)建了幾個(gè)object對象?
會(huì)創(chuàng)建一個(gè)String類型的變量s。在類加載到此處之前沒有出現(xiàn)“xyz”字面量的話,加載此處會(huì)創(chuàng)建一個(gè)對應(yīng)“xyz”的String常量對象。在符合規(guī)范的JVM上,執(zhí)行到此處new關(guān)鍵字會(huì)創(chuàng)建一個(gè)String對象。
五、 Object有哪些公用方法?
1、clone()創(chuàng)建斌返回此對象的副本
2、equals()判斷
3、getclass()返回object的運(yùn)行類
4、hashcode()返回對象的哈希碼值
5、notify()喚醒正在等待對象監(jiān)聽器的單個(gè)進(jìn)程
6、notifyAll()喚醒正在等待對象監(jiān)聽器的所有進(jìn)程
7、wait()導(dǎo)致當(dāng)前線程等待,直到另一個(gè)線程調(diào)用該對象的 notify()方法或 notifyAll()方法。
8、toString()返回此對象的字符串表示形式
9、finalize()當(dāng)垃圾收集確定不需要該對象時(shí),垃圾回收器調(diào)用該方法
六、Java的四種引用,強(qiáng)弱軟虛,用到的場景。
強(qiáng)引用:垃圾回收器不會(huì)回收
軟引用:如果內(nèi)存空間足夠,垃圾回收器就不會(huì)進(jìn)行回收,如果內(nèi)存空間不足,垃圾回收器就會(huì)進(jìn)行回收
弱引用:一旦發(fā)現(xiàn)了只有弱引用的對象,垃圾回收器就會(huì)進(jìn)行回收。
虛引用:如果發(fā)現(xiàn)該對象還具有虛引用,就會(huì)在回收該對象之前,吧這個(gè)虛引用加入到與之關(guān)聯(lián)的引用隊(duì)列中。
七、靜態(tài)變量和實(shí)例變量的區(qū)別。
靜態(tài)變量前要加上關(guān)鍵字static,實(shí)例變量則不會(huì)。
實(shí)例變量是屬于某個(gè)對象的屬性,必須創(chuàng)建了實(shí)例對象,其中的實(shí)例變量才會(huì)分配空間,才能使用這個(gè)實(shí)例變量。靜態(tài)變量不屬于任何的實(shí)例對象,而是屬于類,也稱為類變量,只要程序加載了類的字節(jié)碼,不用創(chuàng)建任何實(shí)例對象,就會(huì)被分配空間。總之就是,靜態(tài)變量不需要?jiǎng)?chuàng)建任何的對象就可以直接使用,而實(shí)例變量需要先創(chuàng)建實(shí)例對象才能被使用。
八、 Overload和Override的區(qū)別:
重載Overload表示的是同一個(gè)類中可以有多個(gè)相同名稱的方法,但這些方法的參數(shù)列表不同,即就是參數(shù)參數(shù)或參數(shù)類型不同。重載時(shí)返回值當(dāng)然可以不一樣,但是如果參數(shù)列表完全一致時(shí),不能通過返回類型不一致而實(shí)現(xiàn)重載,這是不可以的。
重寫Override表示子類中的方法可以與父類中的方法名稱和參數(shù)完全相同,通過子類創(chuàng)建的對象來調(diào)用這個(gè)方法時(shí),將調(diào)用子類中定義的方法,即就是子類中的該方法將父類的該方法覆蓋了。子類覆蓋父類方法時(shí)只能拋比父類更少或者更小的異常。重寫的方法其返回必須和被覆蓋的方法返回一致。
九、抽象類和接口的區(qū)別。
抽象類可以有默認(rèn)的方法進(jìn)行實(shí)現(xiàn),可以有構(gòu)造器,可以有main方法進(jìn)行運(yùn)行,可以直接在該類中添加實(shí)現(xiàn)的方法接口沒有默認(rèn)的方法進(jìn)行實(shí)現(xiàn),沒有構(gòu)造器,不可以使用main方法進(jìn)行運(yùn)行,在接口中添加方法時(shí)需要在具體實(shí)現(xiàn)的類中添加方法。
十、String、StringBuffer與StringBuilder的區(qū)別。
String表示內(nèi)容不可修改的字符串,StringBuffer表示內(nèi)容可以修改的字符串,String覆蓋了equals()方法和hashcode()方法,而StringBuffer沒有覆蓋兩個(gè)方法,,所以StringBuffer對象存儲(chǔ)到j(luò)ava集合類中時(shí)會(huì)出現(xiàn)問題。
StringBulider也表示內(nèi)容可以修改的字符串,但是其線程是不安全的,運(yùn)行效率高。
到此這篇關(guān)于Java后端面試題最新整理的文章就介紹到這了,更多相關(guān)Java常見基礎(chǔ)后端面試題有哪些內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于spring中不同包中類名相同報(bào)錯(cuò)問題的總結(jié)
這篇文章主要介紹了關(guān)于spring中不同包中類名相同報(bào)錯(cuò)問題的總結(jié),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06
關(guān)于Java中的dozer對象轉(zhuǎn)換問題
Dozer是Java?Bean到Java?Bean映射器,它以遞歸方式將數(shù)據(jù)從一個(gè)對象復(fù)制到另一個(gè)對象,這篇文章主要介紹了Java中的dozer對象轉(zhuǎn)換的操作方法,需要的朋友可以參考下2022-08-08
SpringBoot中實(shí)現(xiàn)訂單30分鐘自動(dòng)取消的三種方案分享
在電商和其他涉及到在線支付的應(yīng)用中,通常需要實(shí)現(xiàn)一個(gè)功能:如果用戶在生成訂單后的一定時(shí)間內(nèi)未完成支付,系統(tǒng)將自動(dòng)取消該訂單,本文將詳細(xì)介紹基于Spring Boot框架實(shí)現(xiàn)訂單30分鐘內(nèi)未支付自動(dòng)取消的幾種方案,并提供實(shí)例代碼,需要的朋友可以參考下2023-10-10
java 獲取冒號后面的參數(shù)(正則)實(shí)現(xiàn)代碼
這篇文章主要介紹了java 獲取冒號后面的參數(shù)(正則)實(shí)現(xiàn)代碼,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-08-08
解決SpringMVC項(xiàng)目連接RabbitMQ出錯(cuò)的問題
這篇文章主要介紹了解決SpringMVC項(xiàng)目連接RabbitMQ出錯(cuò)的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01
spring聲明式事務(wù)@Transactional開發(fā)常犯的幾個(gè)錯(cuò)誤及最新解決方案
使用聲明式事務(wù)@Transactional進(jìn)行事務(wù)一致性的管理,在開發(fā)過程中,發(fā)現(xiàn)很多開發(fā)同學(xué)都用錯(cuò)了spring聲明式事務(wù)@Transactional或使用不規(guī)范,導(dǎo)致出現(xiàn)各種事務(wù)問題,這篇文章主要介紹了spring聲明式事務(wù)@Transactional開發(fā)常犯的幾個(gè)錯(cuò)誤及解決辦法,需要的朋友可以參考下2024-02-02
java反射之Method的invoke方法實(shí)現(xiàn)教程詳解
這篇文章主要給大家介紹了關(guān)于java反射之Method的invoke方法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01

