Java高級開發工程師面試題

對於高級工程師來講,自身的技術修爲尤爲重要,比如算法、設計模式、底層原理等,只有把這些基礎熟練之後,才能在開發過程中知其然知其所以然,出現問題時達到得心應手。接下來與大家一起分享Java高級工程師面試的一些經驗之談。

Memcache與Redis的區別

memcache把數據存在內存之中,斷電後會掛掉;Redis部分數據持久化在硬盤上,斷電不會丟失。

memcache存的是key-value對,redis支持更多的數據結構和數據類型

memcache可以使用一致性hash做分佈式,redis可以做主從同步

redis單線程,只使用1個cp

floatf=3.4;是否正確?

不正確。3.4是雙精度數,將雙精度型(double)賦值給浮點型(float)屬於下轉型(down-casting,也稱爲窄化)會造成精度損失,因此需要強制類型轉換floatf=(float)3.4;或者寫成floatf=3.4F。

Math.round(11.5)等於多少?Math.round(-11.5)等於多少?

Math.round(11.5)的返回值是12,Math.round(-11.5)的返回值是-11。四捨五入的原理是在參數上加0.5然後進行下取整。

Java高級開發工程師面試題

說說類的生命週期

1.加載,查找並加載類的二進制數據,在Java堆中也創建一個java.lang.Class類的對象;

2.連接,連接又包含三塊內容:驗證、準備、初始化。1)驗證,文件格式、元數據、字節碼、符號引用驗證;2)準備,爲類的靜態變量分配內存,並將其初始化爲默認值;3)解析,把類中的符號引用轉換爲直接引用;

3.初始化,爲類的靜態變量賦予正確的初始值;

4.使用,new出對象程序中使用;

5.卸載,執行垃圾回收。

java中實現多態的機制是什麼?

重載:有同樣的方法名稱不同的參數列表。a(){}a(Stringb){}...

重寫(也稱覆蓋):即可以重新編寫與父類同名方法形象的稱之爲重寫(覆蓋)。

描述一下JVM加載class文件的原理機制?

VM中類的裝載是由類加載器(ClassLoader)和它的子類來實現的,Java中的類加載器是一個重要的Java運行時系統組件,它負責在運行時查找和裝入類文件中的類。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章