久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

Java后端面試題最新整理

瀏覽:3日期:2022-08-19 10:02:29

我們學習java知識,除了要做基礎的程序運行外,不可避免的要在面試中遇到一些理論的考察。有些小伙伴程序做的不錯,但是理論上面有所欠缺。這里小編整理了一些常見的后端面試題,希望能對小伙伴們有所幫助,下面一起看看吧。

一、八種基本數據類型的大小,以及他們的封裝類。

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做參數?

switch語句中的變量類型可以使byte,short,int,char。從jdk1.7后可以使用String類型,是通過switch中的String.hashcode將String轉換成int進行判斷的。

三、equals與==的區(qū)別。

==操作符是用來比較兩個變量的值是否相等,即就是比較變量在內存中的存儲地址是否相同,equals()方法時String類從Object類中繼承的,被用來檢測兩個對象的內容是否相同。

四、String s=new String(‘xyz’);創(chuàng)建了幾個object對象?

會創(chuàng)建一個String類型的變量s。在類加載到此處之前沒有出現“xyz”字面量的話,加載此處會創(chuàng)建一個對應“xyz”的String常量對象。在符合規(guī)范的JVM上,執(zhí)行到此處new關鍵字會創(chuàng)建一個String對象。

五、 Object有哪些公用方法?

1、clone()創(chuàng)建斌返回此對象的副本

2、equals()判斷

3、getclass()返回object的運行類

4、hashcode()返回對象的哈希碼值

5、notify()喚醒正在等待對象監(jiān)聽器的單個進程

6、notifyAll()喚醒正在等待對象監(jiān)聽器的所有進程

7、wait()導致當前線程等待,直到另一個線程調用該對象的 notify()方法或 notifyAll()方法。

8、toString()返回此對象的字符串表示形式

9、finalize()當垃圾收集確定不需要該對象時,垃圾回收器調用該方法

六、Java的四種引用,強弱軟虛,用到的場景。

強引用:垃圾回收器不會回收

軟引用:如果內存空間足夠,垃圾回收器就不會進行回收,如果內存空間不足,垃圾回收器就會進行回收

弱引用:一旦發(fā)現了只有弱引用的對象,垃圾回收器就會進行回收。

虛引用:如果發(fā)現該對象還具有虛引用,就會在回收該對象之前,吧這個虛引用加入到與之關聯(lián)的引用隊列中。

七、靜態(tài)變量和實例變量的區(qū)別。

靜態(tài)變量前要加上關鍵字static,實例變量則不會。

實例變量是屬于某個對象的屬性,必須創(chuàng)建了實例對象,其中的實例變量才會分配空間,才能使用這個實例變量。靜態(tài)變量不屬于任何的實例對象,而是屬于類,也稱為類變量,只要程序加載了類的字節(jié)碼,不用創(chuàng)建任何實例對象,就會被分配空間。總之就是,靜態(tài)變量不需要創(chuàng)建任何的對象就可以直接使用,而實例變量需要先創(chuàng)建實例對象才能被使用。

八、 Overload和Override的區(qū)別:

重載Overload表示的是同一個類中可以有多個相同名稱的方法,但這些方法的參數列表不同,即就是參數參數或參數類型不同。重載時返回值當然可以不一樣,但是如果參數列表完全一致時,不能通過返回類型不一致而實現重載,這是不可以的。

重寫Override表示子類中的方法可以與父類中的方法名稱和參數完全相同,通過子類創(chuàng)建的對象來調用這個方法時,將調用子類中定義的方法,即就是子類中的該方法將父類的該方法覆蓋了。子類覆蓋父類方法時只能拋比父類更少或者更小的異常。重寫的方法其返回必須和被覆蓋的方法返回一致。

九、抽象類和接口的區(qū)別。

抽象類可以有默認的方法進行實現,可以有構造器,可以有main方法進行運行,可以直接在該類中添加實現的方法接口沒有默認的方法進行實現,沒有構造器,不可以使用main方法進行運行,在接口中添加方法時需要在具體實現的類中添加方法。

十、String、StringBuffer與StringBuilder的區(qū)別。

String表示內容不可修改的字符串,StringBuffer表示內容可以修改的字符串,String覆蓋了equals()方法和hashcode()方法,而StringBuffer沒有覆蓋兩個方法,,所以StringBuffer對象存儲到java集合類中時會出現問題。

StringBulider也表示內容可以修改的字符串,但是其線程是不安全的,運行效率高。

到此這篇關于Java后端面試題最新整理的文章就介紹到這了,更多相關Java常見基礎后端面試題有哪些內容請搜索好吧啦網以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
主站蜘蛛池模板: 大方县| 天长市| 阿拉尔市| 东源县| 镇原县| 北宁市| 绍兴市| 永州市| 龙山县| 天峻县| 怀来县| 财经| 会宁县| 车致| 汾西县| 雅安市| 淮安市| 库尔勒市| 扎赉特旗| 琼结县| 江都市| 化德县| 怀宁县| 曲周县| 万盛区| 岱山县| 五台县| 灵宝市| 太保市| 秦皇岛市| 青海省| 高淳县| 桑植县| 壤塘县| 兴宁市| 获嘉县| 罗田县| 苏尼特左旗| 东源县| 柳江县| 金溪县|