Java程序员从阿里、京东、美团面试回来,这些面试题你会吗?
前言
作為一個(gè) Java 程序員,你平時(shí)總是陷在業(yè)務(wù)開發(fā)里,每天噼里啪啦忙敲著代碼,上到系統(tǒng)開發(fā),下到 Bug 修改,你感覺自己無所不能。然而偶爾的一次聚會(huì),你聽說和自己一起出道的同學(xué)早已經(jīng)年薪 50 萬,而自己卻囊中羞澀。于是你也想看看新機(jī)會(huì),找個(gè)新平臺(tái),好好發(fā)展。
但是面試的時(shí)候,當(dāng)那個(gè)笑瞇瞇的面試官問出那些你再熟悉不過的 Java 問題時(shí),你只是感覺似曾相識(shí),卻怎么也回答不到點(diǎn)上。比如 HashMap 的工作原理,再或者 volatile 的使用場(chǎng)景。
這個(gè)時(shí)候,你可能會(huì)懷疑自己的能力,也痛恨為什么當(dāng)初自己沒有好好復(fù)習(xí)。
面試,難還是不難?最終結(jié)果好還是不好?取決于面試者的底蘊(yùn)(氣場(chǎng)+技能)、心態(tài)和認(rèn)知以及溝通技巧。而一些主流的大型互聯(lián)網(wǎng)公司面試(阿里巴巴、京東、美團(tuán)、滴滴)更是需要你在面試時(shí)展現(xiàn)出自己的能力,從而獲得面試官的欣賞和肯定。
而程序員在應(yīng)聘時(shí)更是需要經(jīng)歷層層面試。俗話說,磨刀不誤砍柴工,做好面試前的準(zhǔn)備工作可以幫助大家更好的應(yīng)對(duì)面試官的問題以及面試中的突發(fā)情況。
那么我們一起來看看大型互聯(lián)網(wǎng)公司的面試題吧!需要答案詳解的可以加小編QQ群937053620,獲取!
阿里巴巴面試
1、開發(fā)中Java用了比較多的數(shù)據(jù)結(jié)構(gòu)有哪些?
2、談?wù)勀銓?duì)HashMap的理解,底層原理的基本實(shí)現(xiàn),HashMap怎么解決碰撞問題的?這些數(shù)據(jù)結(jié)構(gòu)中是線程安全的嗎?假如你回答HashMap是線程安全的,接著問你有沒有線程安全的map,接下來問了conurren包。
3、對(duì)JVM熟不熟悉?簡(jiǎn)單說說類加載過程,里面執(zhí)行的哪些操作?問了GC和內(nèi)存管理,平時(shí)在tomect里面有沒有進(jìn)行過相關(guān)的配置
4、然后問了http協(xié)議,get和post的基本區(qū)別,接著tcp/ip協(xié)議,三次握手,窗口滑動(dòng)機(jī)制。
5、開發(fā)中用了那些數(shù)據(jù)庫(kù)?回答mysql,儲(chǔ)存引擎有哪些?然后問了我悲觀鎖和樂觀鎖問題使用場(chǎng)景、分布式集群實(shí)現(xiàn)的原理。
6、然后問了我springmvc和mybatis的工作原理,有沒有看過底層源碼?
京東金融面試
1、Dubbo超時(shí)重試;Dubbo超時(shí)時(shí)間設(shè)置
2、如何保障請(qǐng)求執(zhí)行順序
3、分布式事物與分布式鎖(扣款不要出現(xiàn)負(fù)數(shù))
4、分布式session設(shè)置
5、執(zhí)行某操作,前50次成功,第51次失敗a全部回滾b前50次提交第51次拋異常,ab場(chǎng)景分別如何設(shè)置Spring(傳播性)
6、Zookeeper有哪些用
7、JVM內(nèi)存模型
8、數(shù)據(jù)庫(kù)垂直和水平拆分
9、MyBatis如何分頁;如何設(shè)置緩存;MySQL分頁
10、熟悉IO么?與NIO的區(qū)別,阻塞與非阻塞的區(qū)別
11、分布式session一致性
12、分布式接口的冪等性設(shè)計(jì)「不能重復(fù)扣款」
美團(tuán)面試
1、最近做的比較熟悉的項(xiàng)目是哪個(gè)?畫一下項(xiàng)目技術(shù)架構(gòu)圖
2、JVM老年代和新生代的比例?
3、YGC和FGC發(fā)生的具體場(chǎng)景
4、jstack,jmap,jutil分別的意義?如何線上排查JVM的相關(guān)問題?
5、線程池的構(gòu)造類的方法的5個(gè)參數(shù)的具體意義?
6、單機(jī)上一個(gè)線程池正在處理服務(wù)如果忽然斷電該怎么辦?(正在處理和阻塞隊(duì)列里的請(qǐng)求怎么處理)?
7、使用無界阻塞隊(duì)列會(huì)出現(xiàn)什么問題?
8、接口如何處理重復(fù)請(qǐng)求?
9、具體處理方案是什么?
10、如何保證共享變量修改時(shí)的原子性?
11、設(shè)計(jì)一個(gè)對(duì)外服務(wù)的接口實(shí)現(xiàn)類,在1,2,3這三個(gè)主機(jī)(對(duì)應(yīng)不同IP)上實(shí)現(xiàn)負(fù)載均衡和順序輪詢機(jī)制(考慮并發(fā))
滴滴面試
1、自我介紹,技術(shù)特點(diǎn)
2、興趣是什么,優(yōu)勢(shì)是什么
3、jvm,jre以及jdk三者之間的關(guān)系?
4、Dubbo的底層原理,Zookeeper是什么
5、cincurrentMap的機(jī)制;TreeMap;Volatil關(guān)鍵字
6、快速排序;廣度優(yōu)先搜索(隊(duì)列實(shí)現(xiàn))
7、緩存的雪崩以及穿透的理解?
8、HashMap的key可以重復(fù)嗎?
9、synchronized和lock的區(qū)別?
10、開發(fā)一個(gè)大型網(wǎng)站你會(huì)考慮哪些問題?
面試得到的結(jié)論
通過面試題來看,可以看出目前互聯(lián)網(wǎng)公司面試考點(diǎn)為:
- 性能調(diào)優(yōu)、算法數(shù)據(jù)機(jī)構(gòu)
- 高并發(fā)下數(shù)據(jù)安全、接口冪等性、原子性等
- 分布式下協(xié)同、已經(jīng)鎖的處理
- 數(shù)據(jù)庫(kù)的分庫(kù)分表、項(xiàng)目之間的垂直拆分
出現(xiàn)頻率高的技術(shù)點(diǎn)有:HashMap,JVM,Dubbo,Mybatis,Zookeeper,http tcp/ip
【文章彩蛋】
為了解決小伙伴們的燃眉之急,小編特地為大家整理了一些Java相關(guān)的面試題,可以加小編的QQ群:937053620,獲取!后期也會(huì)不斷更新添加新的面試題,希望可以幫助到大家。
轉(zhuǎn)載于:https://juejin.im/post/5c402ec2e51d4552266540c9
總結(jié)
以上是生活随笔為你收集整理的Java程序员从阿里、京东、美团面试回来,这些面试题你会吗?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS应用代码注入防护
- 下一篇: cgroup代码浅析(2)