1. 程式人生 > >金九銀十跳槽季,程式設計師面試點解析之Java專場

金九銀十跳槽季,程式設計師面試點解析之Java專場

前言

近年來Java工程師這個崗位炙手可熱,市場需求大,學習Java的人也越來越多,所以IT企業與求職者的選擇都比較多,那麼IT企業在面試時都會提哪些問題呢。下面為大家分享 Java高階工程師面試阿里、京東、天貓、菜鳥時涉及的知識點,文章略長,但較全面,閱讀時間15分鐘左右。

11212.png

一、面試技巧

1、背熟你的簡歷

原因:面試的第一個問題,通常是讓你進行自我介紹,或者介紹最近的專案,而一個面試者,如果連自己的簡歷都不熟悉,對簡歷裡提到的專案、技術都無法描述清楚的話,我想沒有哪家公司會選擇這樣的工作人員。所以,切記:一定要背好自己的簡歷,不要求你能全部記住,但至少要熟記最近待過的兩家公司,這兩家公司裡做過的專案、負責的模組、專案裡面用到的技術以及相對應的技術實現方案(這個尤為重要)。

2、保持自信心和沉重冷靜的心態

原因:面試過程中,自信是必不可少的, 你可以在面試的路上進行自我暗示,不斷對自己說,我可以的, 反正我就是這麼做的。其實,面對面試官的時候,你自信的狀態會讓面試官感覺到你是個很有實力的人,至少從第一印象上會給你高分。另外就是保持沉重冷靜,如果讓你提供技術方案或者說某個技術原理,沒必要什麼都說,你可以對面試官說:我先想想。然後回想記憶中的知識,組織一下語言,有條理地說出來,這樣可以更好地表現你的才能。 無論誰面試都會緊張,我也會緊張,有時候明明記得的知識點會突然忘記,沒關係,大膽地說忘了,或者直接說不知道,而不是逞強隨意胡亂一說。

3、儘量記住面試過程中你回答不出來或者回答存在不妥的問題

原因:面試失敗了沒關係,畢竟每個公司的要求不一樣,提的問題和你擅長的方面可能有所出入,但是請記住一點:面試過程中那些你回答不出來的問題,或者你感覺回答不準確的問題,可以用紙和筆記下來。如果不會的,你可以當場問面試官有沒有好的解答,如果面試官不願意告訴你(一般是基礎方面面試官就懶得答你),那麼你就自己回家查資料,如果是某些特定的技術,也可以自己寫寫案例什麼的,畢竟知識點就那麼多,問題百變,原理不變。面試也是一個學習知識的過程,讓你瞭解大部分公司目前需要或者要求的技術,這次不知道,下次就知道了

4、去面試之前,最好先了解你要去面試公司的情況(包括產品、專案情況)

原因:俗話說,知己知彼,百戰不殆,面試就是一場戰鬥,你需要了解面試公司的基本情況,包括崗位要求,這樣你就能大概知道面試的這家公司的技術要求情況。 為何要了解這家公司的主營產品和專案呢,就是讓你大概瞭解這家公司的一個技術架構的情況,包括你可能對他們的一種實現方式提出質疑和疑惑。相信面試官很願意幫你解答這些問題,這樣你既能表現,也學到了知識,何樂而不為。

5、合理安排你的面試時間(如果有多家公司的面試機會,儘量把你想去的公司放到最後去面試)

原因:可能大部分人對於如何安排面試時間會比較迷茫,隨意安排。這裡有個技巧,如果同時有多個面試機會,把你最想去的公司放到最後,這樣你經歷過前面的這些公司篩選,如果成功了是個機會,如果沒成功,也是為最後做練習。 不過這裡就需要考慮兩點:

1、你需要記住你投簡歷的公司和基本情況(這說明你不是海投的)

2、如果記不住,可以先應答一個時間,後續瞭解公司資訊後,再調整面試時間。而且建議一天面試的公司不要超過兩家,最好是上午一家,下午一家,這樣你有充足的時間調整狀態。

二、專案介紹

1、明確專案是做什麼的。

2、明確專案的價值。(為什麼做這個專案,它解決了使用者什麼痛點,它帶來什麼價值?)

3、明確專案的功能。(這個專案涉及哪些功能?)

4、明確專案的技術。(這個專案用到哪些技術?)

5、明確個人在專案中的位置和作用。(你在這個專案的承擔角色?)

6、明確專案的整體架構。

7、明確專案的優缺點,如果重新設計你會如何設計。

8、明確專案的亮點。(這個專案有什麼亮點?)

9、明確技術成長。(你通過這個專案有哪些技術成長?)

三、面試基礎總結

 在開始分析面試題之前,順便給大家推薦一個Java後端方向的交流學習社群:650385180,裡面不僅可以交流討論,還有面試經驗分享以及免費的資料下載,包括Spring,MyBatis,Netty原始碼分析,高併發、高效能、分散式、微服務架構的原理,JVM效能優化這些成為架構師必備的知識體系。相信對於已經工作和遇到技術瓶頸的碼友,在這裡會有你需要的內容。

Java基礎

1、List 和 Set 的區別

2、HashSet 是如何保證不重複的

3、HashMap 是執行緒安全的嗎,為什麼不是執行緒安全的(最好畫圖說明多執行緒環境下不安全)?

4、HashMap 的擴容過程

5、HashMap 1.7 與 1.8 的 區別,說明 1.8 做了哪些優化,如何優化的?

6、final finally finalize

7、強引用 、軟引用、 弱引用、虛引用

8、Java反射

9、Arrays.sort 實現原理和 Collection 實現原理

10、LinkedHashMap的應用

11、cloneable介面實現原理

12、異常分類以及處理機制

13、wait和sleep的區別

14、陣列在記憶體中如何分配

Java 併發

1、synchronized 的實現原理以及鎖優化?

2、volatile 的實現原理?

3、Java 的訊號燈?

4、synchronized 在靜態方法和普通方法的區別?

5、怎麼實現所有執行緒在等待某個事件的發生才會去執行?

6、CAS?CAS 有什麼缺陷,如何解決?

7、synchronized 和 lock 有什麼區別?

8、Hashtable 是怎麼加鎖的 ?

9、HashMap 的併發問題?

10、ConcurrenHashMap 介紹?1.8 中為什麼要用紅黑樹?

11、AQS

12、如何檢測死鎖?怎麼預防死鎖?

13、Java 記憶體模型?

14、如何保證多執行緒下 i++ 結果正確?

15、執行緒池的種類,區別和使用場景?

16、分析執行緒池的實現原理和執行緒的排程過程?

17、執行緒池如何調優,最大數目如何確認?

18、ThreadLocal原理,用的時候需要注意什麼?

19、CountDownLatch 和 CyclicBarrier 的用法,以及相互之間的差別?

20、LockSupport工具

21、Condition介面及其實現原理

22、Fork/Join框架的理解

23、分段鎖的原理,鎖力度減小的思考

24、八種阻塞佇列以及各個阻塞佇列的特性

Spring

1、BeanFactory 和 FactoryBean?

2、Spring IOC 的理解,其初始化過程?

3、BeanFactory 和 ApplicationContext?

4、Spring Bean 的生命週期,如何被管理的?

5、Spring Bean 的載入過程是怎樣的?

6、如果要你實現Spring AOP,請問怎麼實現?

7、如果要你實現Spring IOC,你會注意哪些問題?

8、Spring 是如何管理事務的,事務管理機制?

9、Spring 的不同事務傳播行為有哪些,幹什麼用的?

10、Spring 中用到了那些設計模式?

11、Spring MVC 的工作原理?

12、Spring 迴圈注入的原理?

13、Spring AOP的理解,各個術語,他們是怎麼相互工作的?

14、Spring 如何保證 Controller 併發的安全?

Netty

1、BIO、NIO和AIO

2、Netty 的各大元件

3、Netty的執行緒模型

4、TCP 粘包/拆包的原因及解決方法

5、瞭解哪幾種序列化協議?包括使用場景和如何去選擇

6、Netty的零拷貝實現

7、Netty的高效能表現在哪些方面

分散式相關

1、Dubbo的底層實現原理和機制

2、描述一個服務從釋出到被消費的詳細過程

3、分散式系統怎麼做服務治理

4、介面的冪等性的概念

5、訊息中介軟體如何解決訊息丟失問題

6、Dubbo的服務請求失敗怎麼處理

7、重連機制會不會造成錯誤

8、對分散式事務的理解

9、如何實現負載均衡,有哪些演算法可以實現?

10、Zookeeper的用途,選舉的原理是什麼?

11、資料的垂直拆分水平拆分。

12、zookeeper原理和適用場景

13、zookeeper watch機制

14、redis/zk節點宕機如何處理

15、分散式叢集下如何做到唯一序列號

16、如何做一個分散式鎖

17、用過哪些MQ,怎麼用的,和其他mq比較有什麼優缺點,MQ的連線是執行緒安全的嗎

18、MQ系統的資料如何保證不丟失

19、列舉出你能想到的資料庫分庫分表策略;分庫分表後,如何解決全表查詢的問題

20、zookeeper的選舉策略

21、全域性ID

資料庫

1、mysql分頁有什麼優化

2、悲觀鎖、樂觀鎖

3、組合索引,最左原則

4、mysql 的表鎖、行鎖

5、mysql 效能優化

6、mysql的索引分類:B+,hash;什麼情況用什麼索引

7、事務的特性和隔離級別

快取

1、Redis用過哪些資料資料,以及Redis底層怎麼實現

2、Redis快取穿透,快取雪崩

3、如何使用Redis來實現分散式鎖

4、Redis的併發競爭問題如何解決

5、Redis持久化的幾種方式,優缺點是什麼,怎麼實現的

6、Redis的快取失效策略

7、Redis叢集,高可用,原理

8、Redis快取分片

9、Redis的資料淘汰策略

JVM

1、詳細jvm記憶體模型

2、講講什麼情況下回出現記憶體溢位,記憶體洩漏?

3、說說Java執行緒棧

4、JVM 年輕代到年老代的晉升過程的判斷條件是什麼呢?

5、JVM 出現 fullGC 很頻繁,怎麼去線上排查問題?

6、類載入為什麼要使用雙親委派模式,有沒有什麼場景是打破了這個模式?

7、類的例項化順序

8、JVM垃圾回收機制,何時觸發MinorGC等操作

9、JVM 中一次完整的 GC 流程(從 ygc 到 fgc)是怎樣的

10、各種回收器,各自優缺點,重點CMS、G1

11、各種回收演算法

相關推薦

跳槽程式設計師面試解析Java專場

前言 近年來Java工程師這個崗位炙手可熱,市場需求大,學習Java的人也越來越多,所以IT企業與求職者的選擇都比較多,那麼IT企業在面試時都會提哪些問題呢。下面為大家分享 Java高階工程師面試阿里、京東、天貓、菜鳥時涉及的知識點,文章略長,但較全面,閱讀時間15分鐘左右。 一、面試技巧 1、

跳槽程式設計師這樣面試能漲薪50%

金九銀十,每年9、10月份各大網際網路公司都會週期性地發生人事變動,無論是剛進社會的職場菜鳥,還是準備跳槽的老手,都將在這個時候獲得新工作,或迎來晉升漲薪的最佳機會。   程式設計師如何在面試過程中介紹自己的專案經驗呢?本文給出的一些方法不是拍腦袋想出來的,而是從面試上百個候選人的

求職前端面試大全送給你

前言最近好多小夥伴都跳槽去找工作,我只能在心裡默默的支援他們能找到一份好的工作,這份前端面試大全送給我的小夥伴們,主要說的是前端一些常用的一些知識,說的不對的地方請小夥伴們即使指正出來,自己同時也回顧下這些知識。主要分以下幾個方邊來說: css和htmljavasc

跳槽上週剛面試回來後的面試總結想進BAT必看

上週陪同之前一起工作的同事去面試(喬治,小袁,鵬飛(面試人)),第一站是去深圳,第二站上海,第三

左善菲:9.1戰非農黃金原油行情走勢分析

左善菲:9.1金九銀十戰非農,黃金原油行情走勢分析 高山流水,非知音不能聽,EIA之夜,無布局何來結局。風帆,不掛在桅桿上,是一塊無用的布,桅桿,不掛上風帆,是一根平常的柱。非農,不付諸行動是虛無縹緲的霧,行動,而沒有布局是徒走沒有盡頭的路。摘下的一瓣花能美麗多久?一時的

跳槽你拿到心目中的Offer了嗎?你薪水升上去了嗎?

java 分布式 面試 程序員 後端 簡歷怎麽投? 有工作經驗的人。一般情況下有工作經驗的人,技術也有了,人脈也有了。那麽我們找工作的時候,可以依靠這些人脈。正所謂,出了學校,進了社會,你的技能不是最重要的,人脈才是。所以你可以先去打聽打聽你的那些朋友,或者認識的一些技術大V有沒有工作介紹

跳槽Java面試大綱及答案

本文轉載自https://blog.csdn.net/weixin_37509652/article/details/79701679 I made a slight modification. 跳槽時時刻刻都在發生,但是我建議大家跳槽之前,先想清楚為什麼要跳槽。切不可跟風,看到同事一個

鐵12講述一個收到騰訊、美團等五家大廠意向offer的大神

網際網路提前批基本告一段落,大大小小的offer也拿了一些,秉著回報社會,堅持中國特色社會主義,挽救新一程式碼農的思想,整理了下各個公司的麵筋、考點,希望能激勵各位搬磚工,起到鼓足幹勁,力爭上游的作用O(∩_∩)O 閒聊 本人北京985渣碩一枚,是真的渣,舍友商湯、曠世,出國留學,學校中各類

鐵12目前騰訊、美團等五家大廠都收到意向offer

網際網路提前批基本告一段落,大大小小的offer也拿了一些,秉著回報社會,堅持中國特色社會主義,挽救新一程式碼農的思想,整理了下各個公司的麵筋、考點,希望能激勵各位搬磚工,起到鼓足幹勁,力爭上游的作用O(∩_∩)O 噱頭 小姐姐♀說先拿出offer炸炸人,否則沒人看...

黃金週假期看房?今年樓市有點涼不少中介轉行

又逢一年國慶。從1999年首個“十一黃金週”開始,如今,中國人已經迎來第20個“十一黃金週”。20年,集中休假的假日製度漸漸改變著中國人的生活方式。 七天長假,你是在“堵”還是在“宅”?你是在景區“被擠”,還是在家裡“被催”?你是在“買買買”的路上,還是在參加“婚禮婚禮和婚

跳槽Java面試大綱

點選上方“程式設計師小灰”,選擇“置頂公眾號”有趣有內涵的文章第一時間送達!本文轉載自公眾號 

跳槽你應該如何逆襲沖進BATJ?

時間 感受 微服務 分布式協調服務 幾分鐘 jenkins 每天 模板 技術文章 想起剛剛入門的時候,工作和學習上是完全找不到方向的,再然後渡過了一段時間的新手期之後,工作的方向雖然逐漸變得清晰起來,但是沒過多久,能了解到的資料就開始超過每天學習的能力,像是買了沒看的書、收

跳槽請離獵頭遠一點

大家好,一年一度的金三銀四跳槽季又到了,和大家聊聊相關的話題。 首先解釋一下,為什麼每年的三四月份是跳槽的好時機呢?答案很簡單,因為這個時候剛拿完年終獎,很多想要離職的人有了機會。你可能又會奇怪,不是過年之前拿年終獎麼,怎麼三四月份拿?這是因為很多在美上市公司發年終獎的時間都是財年的結束,而每年財年結束差不多

——18個成功處理任何面試的方法

面試一直是一種令人痛苦的經歷。在這種情況下,您將根據自己的工作表現來判斷。 在採訪中,每個人都會感到緊張。放鬆!不要驚慌。你需要克服緊張情緒。 求職面試技巧和建議適用於尋找夢想工作的求職者。 無論您想選擇哪種職業道路,以下是幫助您實現夢想工作的最佳技巧。

裸辭跳槽面試卻被面試官吊打

目前已經達到金九銀十的階段,相信有不少程式設計師蠢蠢欲動,開始出去試試水,想要跳槽漲薪了!有一個朋友就想改變現狀,於是找了大量網上

史上最強 Java 面試題整理。

dir db2 計算 2.0 dad map rec 比較 ef6 以下會重新整理所有 Java 系列面試題答案、及各大互聯網公司的面試經驗,會從以下幾個方面匯總,本文會長期更新。 Java 面試篇 史上最全 Java 面試題,帶全部答案 史上最全 69 道 Spring

Java高階程式設計師面試大綱——備戰跳槽

跳槽時時刻刻都在發生,但是我建議大家跳槽之前,先想清楚為什麼要跳槽。切不可跟風,看到同事一個個都走了,自己也盲目的開始面試起來(期間也沒有準備充分),到底是因為技術原因(影響自己的發展,偏移自己規劃的軌跡),還是錢給少了,不受重視。 準備不充分的面試,完全是浪費時間,更是對

各大網際網路公司Java面試題合集

金九銀十又到了面試求職高峰期,最近有很多網友都在求大廠面試題。正好我之前電腦裡面有這方面的整理,於是就發上來分享給大家。  這些題目是網友去百度、小米、樂視、美團、58、獵豹、360、新浪、搜狐等一線網際網路公司面試被問到的題目,熟悉本文中列出的知識點會大大增加通過前兩輪技術

看看這31道Android面試題

金九銀十中,看看這31道Android面試題 閱讀目錄 1.如何對 Android 應用進行效能分析 2.什麼情況下會導致記憶體洩露 3.如何避免 OOM 異常 4.Android 中如何捕獲未捕獲的異常 5.ANR 是什麼?怎樣避免和解決 A

Java程式設計師四求職這些多執行緒面試題你會嗎?

  多執行緒是Java技術面試中面試官比較喜歡問的問題之一。在這裡,從面試的角度列出了大部分重要的問題,但是作為一個程式設計師仍然應該牢固的掌握Java多執行緒基礎知識來對應日後碰到的問題。 1. 程序和執行緒之間有什麼不同? 一個程序是一個獨立(self contain