更新時間:2020-05-28 16:24:03 來源:動力節(jié)點 瀏覽3230次
技術考察要點
總的來說,技術相關的考察主要分為兩大塊,一是基礎,二是經(jīng)驗,基礎包括java基礎、數(shù)據(jù)庫、中間件等,來自于日常的積累和面試前的準備。
經(jīng)驗包括以往做過的項目、解決的問題、以及一些場景題(比如你的項目如果流量大了十倍如何保證可用)。
集合
集合分為兩大塊:java.util包下的非線程安全集合和java.util.concurrent下的線程安全集合。
List
ArrayList與LinkedList的實現(xiàn)和區(qū)別
HashMap:了解其數(shù)據(jù)結構、hash沖突如何解決(鏈表和紅黑樹)、擴容時機、擴容時避免rehash的優(yōu)化
LinkedHashMap:了解基本原理、哪兩種有序、如何用它實現(xiàn)LRU
TreeMap:了解數(shù)據(jù)結構、了解其key對象為什么必須要實現(xiàn)Compare接口、如何用它實現(xiàn)一致性哈希
Set
Set基本上都是由對應的map實現(xiàn),簡單看看就好
常見問題
hashmap如何解決hash沖突,為什么hashmap中的鏈表需要轉成紅黑樹?
hashmap什么時候會觸發(fā)擴容?
jdk1.8之前并發(fā)操作hashmap時為什么會有死循環(huán)的問題?
hashmap擴容時每個entry需要再計算一次hash嗎?
hashmap的數(shù)組長度為什么要保證是2的冪?
如何用LinkedHashMap實現(xiàn)LRU?
如何用TreeMap實現(xiàn)一致性hash?
中間件、存儲、以及其他框架
bean的生命周期、循環(huán)依賴問題、spring cloud(如項目中有用過)、AOP的實現(xiàn)、spring事務傳播
常見問題
java動態(tài)代理和cglib動態(tài)代理的區(qū)別(經(jīng)常結合spring一起問所以就放這里了)
spring中bean的生命周期是怎樣的?
屬性注入和構造器注入哪種會有循環(huán)依賴的問題?
Dubbo(或其他Rpc框架)
了解一個常用RPC框架如Dubbo的實現(xiàn):服務發(fā)現(xiàn)、路由、異步調(diào)用、限流降級、失敗重試
常見問題
Dubbo如何做負載均衡?
Dubbo如何做限流降級?
Dubbo如何優(yōu)雅的下線服務?
Dubbo如何實現(xiàn)異步調(diào)用的?
RocketMq(或其他消息中間件)
了解一個常用消息中間件如RocketMq的實現(xiàn):如何保證高可用和高吞吐、消息順序、重復消費、事務消息、延遲消息、死信隊列
常見問題
RocketMq如何保證高可用的?
RocketMq如何保證高吞吐的?
RocketMq的消息是有序的嗎?
RocketMq的消息局部順序是如何保證的?
RocketMq事務消息的實現(xiàn)機制?
RocketMq會有重復消費的問題嗎?如何解決?
RocketMq支持什么級別的延遲消息?如何實現(xiàn)的?
RocketMq是推模型還是拉模型?
Consumer的負載均衡是怎么樣的?
以上就是動力節(jié)點java培訓機構的小編針對“2020年京東Java面試題總結”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務。