Java核心面試技術36講-楊曉峰-極客時間

王平發表於2019-03-24

極客時間出品的《Java核心技術36講》由楊曉峰所作,楊曉峰是前Oracle首席工程師,本專欄曉峰以36道精選Java面試題入手,講透每個java知識點,帶你修煉Java內功。

 

Java核心面試技術36講專欄介紹

Java的誕生已經超過了20年。一直以來,Java以其語法簡單,開發者可以快速上手,適應眾多領域,具有跨平臺能力等特性,吸引了無數程式設計師學習和使用。基於Java優秀的特性和龐大的使用基礎,各大公司對Java工程師的需求也是源源不斷。

 

java核心技術36講

 

但作為面試者,想進入BAT併成長為一名高階Java工程師卻沒那麼容易。雖然面試者具備了一定的工作年限要求,也長期使用Java語言進行開發,但面試時,面對刨根問底的提問,經常感覺get不到面試官的點,自己回答的也是馬馬虎虎,甚至無法完整描述自己開發過的系統或者使用過的技術,因此也就很難得到滿意的面試結果。

那如何才能在Java面試中做到遊刃有餘呢?本專欄就從大廠面試考察的知識點和能力出發,精選出36道Java面試題,每期針對1道題目,不僅給出面試的典型回答和考點分析,還會剖析知識點,將其講清講透,讓你徹底領悟題目背後所考察的能力,幫你梳理複習Java知識體系。

 

Java核心面試技術36講作者介紹

楊曉峰,前Oracle北京Java平臺部門,首席工程師,OpenJDK Committer,從JDK 8開始參與了JDK的開發和測試工作,曾領導Java核心類庫北京團隊,主要負責前沿版本的核心類庫新特性相關任務。專注於Java以及其他程式語言的新特性,尤其是在雲端計算等前沿領域的應用和演進。

java核心36講作者楊曉峰

 

Java核心面試技術36講專欄模組

專欄共36期,分為5大模組。

1.Java基礎:

將圍繞Java語言基本特性和機制,由點帶面,幫你構建牢固的Java技術功底。

2.Java進階:

主要將圍繞併發程式設計、Java虛擬機器等領域展開,助你攻堅大廠Java面試的核心陣地。

3.Java應用開發擴充套件:

將聚焦資料庫程式設計、主流開源框架、分散式開發等,讓你掌握Java開發的十八般兵器。

4.Java安全基礎:

幫助你理解常見的應用安全問題和處理方法,掌握如何寫出符合大廠規範的安全程式碼。

5.Java效能基礎:

幫助你掌握相關工具、方法論與基礎實踐。

 

Java核心面試技術36講詳細目錄

1)談談你對Java平臺的理解?

2)Exception和Error有什麼區別?

3)談談 final、finally、finalize 有什麼不同?

4)強引用、軟引用、弱引用、幻象引用有什麼區別?

5)String、StringBuffer、StringBuilder 有什麼區別?

6)動態代理是基於什麼原理?

7)int和Integer有什麼區別?

8)對比 Vector、ArrayList、LinkedList 有何區別?

9)對比 HashtaWe、HashMap、TreeMap 有什麼不同?

10)如何保證集合是執行緒安全的? ConcurrentHashMap如何 實現高效地執行緒安全?

11)Java提供了哪些I〇方式? NIO如何實現多路複用?

12)Java有幾種檔案拷貝方式?哪一種最高效?

13)談談介面和抽象類有什麼區別?

14)談談你知道的設計模式?

15)synchronized 和 ReentrantLock 有什麼區別暱?

16)synchronized底層如何實現?什麼是鎖的升級、降級?

17)一個執行緒兩次呼叫startO方法會出現什麼情況?

18)什麼情況下Java程式會產生死鎖?如何定位、修復?

19)Java併發包提供了哪些併發工具類?

20)併發包中的 ConcurrentLinkedQueue 和 LinkedBlockingQueue 有什麼區別?

21)Java併發類庫提供的執行緒池有哪幾種?分別有什麼特點?

22)Atomiclnteger底層實現原理是什麼?如何在自己的產品 程式碼中應用CAS操作?

23)請介紹類載入過程,什麼是雙親委派模型?

24)有哪些方法可以在執行時動態生成一個Java類?

25)談談JVM記憶體區域的劃分,哪些區域可能發生 OutOfMemoryError?

26)如何監控和診斷JVM堆內和堆外記憶體使用?

27)Java常見的垃圾收集器有哪些?

28)談談你的GC調優思路?

29)Java記憶體模型中的happen-before是什麼?

30)Java程式執行在Docker等容器環境有哪些新問題?

31)你瞭解Java應用開發中的注入攻擊嗎?

32)如何寫出安全的Java程式碼?

33)Java後臺服務明顯“變慢”,談談你的診斷思路?

34)有人說“Lambda能讓Java程式慢30倍”,你怎麼看?

35)JVM優化Java程式碼時都做了什麼?

36)談談MySQL支援的事務隔離級別,以及悲觀鎖和樂觀鎖 的原理和應用場景?

37)談談Spring Bean的生命週期和作用域?

38)對比Java標準NIO類庫,你知道Netty是如何實現更高 效能的嗎?

39)談談常用的分散式ID的設計方案? Snowflake是否受冬 令時切換影響?

 

訂閱須知

專欄適宜人群有面試/晉升需求的Java程式設計師;希望夯實Java基礎的程式設計師;團隊Leader;面試官。

專欄由極客時間出品,可在極客時間APP和小程式上學習。

本專欄為訂閱專欄,形式為圖文 + 音訊,共計39期,定價99元。

限時優惠價79元,掃我下方二維碼報名,我們可額外各得12元,報名後記得加我微信:dismissmewp,備註:返現。好返你12元哈哈。也可以通過下面連結報名:http://gk.link/a/102Im

java核心36講價格

 

極客時間相關Java專欄:

Java併發程式設計實戰-王寶令

MySQL實戰45講-林曉斌

猿人學banner宣傳圖

我的公眾號:猿人學 Python 上會分享更多心得體會,敬請關注。

***版權申明:若沒有特殊說明,文章皆是猿人學 yuanrenxue.com 原創,沒有猿人學授權,請勿以任何形式轉載。***

相關文章