這 5 個簡單的面試題,把群炸了

業餘草發表於2019-04-24

點選上方“業餘草”,選擇“置頂公眾號”

第一時間獲取技術乾貨和業界資訊!

640?wx_fmt=png

640?wx_fmt=png

大家都知道,我最近利用業餘時間搞了一個面試題小程式。也寫了不少乾貨文章,今天早上心血來潮,發了 5 個面試題在群裡,結果群炸了,不少人回答不少來,再不是就描述的不全。

面試題如下:

  1. volatile 的用途是啥?

    能保證多執行緒共享變數的原子性麼?

  2. threadlocal 是執行緒安全的麼的?

    具體什麼業務場景使用threadlocal

  3. 什麼是強引用、軟引用、弱引用、虛引用?

  4. wait方法釋放鎖麼?

    notify/notifyall 釋放鎖麼?

    sleep 釋放鎖麼?

  5. LinkedHashMap 的原理和使用場景?

這題其實很簡單了,而且我的公眾號裡基本上都寫過這些知識點。比如:volatile 的用途是啥?能保證多執行緒共享變數的原子性麼?這題是多麼的熟悉,相信不少看過我的這篇文章《Java 執行緒安全的3大核心:原子性、可見性、有序性》的應該都能回答上來。可惜啊,很多人不看。

再比如第二題:threadlocal 是執行緒安全的麼的?具體什麼業務場景使用threadlocal?我在 2018 年就寫過相關文章《這樣使用 ThreadLocal 對嗎?》。雖然那個時候排版還不好,但是 Threadlocal 絕對是高頻面試題了,所以必須要記牢了。

再看第三題:什麼是強引用、軟引用、弱引用、虛引用?我記得最近一個月左右才發了類似的文章吧。手把手教你通過Java程式碼體驗強引用、軟引用、弱引用、虛引用的區別》是否很眼熟。但是對不起只有錢才能打動我,眼熟根本不值錢。

第四題:wait方法釋放鎖麼?notify/notifyall 釋放鎖麼?sleep 釋放鎖麼?也是老早就寫過的。程式碼中的Thread.sleep(0) 有什麼意義?是寫錯了嗎?》、《java執行緒最熟悉而又陌生的知識點:sleep與wait》。這些知識點都在於平時的積累,你平時在地鐵上,也或者是在公交上都是不錯的學習時機。一定要從根上改變自己,996 才能與你無關。

第五題:LinkedHashMap 的原理和使用場景?本月才寫過的內容《深入淺出LinkedHashMap原理和原始碼解毒》。

雖然平時大家都面向百度程式設計,但也要留意一下,面向面試程式設計。平時要關注某項技術的具體實現,某項技術的底層原理,還要稍微的記清楚一些概念,夾帶一些簡單的演算法。做到這些 BAT 的大門為你們敞開。

更多精彩面試題,請關注我的程式設計師題庫小程式。做到心中有數,面試無敵!

640

10T技術資源大放送!包括但不限於:C/C++,Linux,Python,Java,PHP,人工智慧,GO等等。在公眾號內回覆對應關鍵字或框架名字,即可免費獲取!!

640?wx_fmt=png

 你再主動一點點 640?  我們就有故事了

相關文章