【前線】-面試被問jdk8有什麼特性

轉眼間2019年就要結束了,一年過得真快啊!最近發現好多小夥伴都在討論明年要不要換一家,突然想起我不久前的一個面試(本人很菜)。

問了很多問題但是最讓我蛋疼的是這一道。

面試官:看簡歷你項目用的是jdk8 (由於項目是財務類軟件,面試官也不好問項目相關的問題,看了好久蹦出這個問題),那你跟我說一下有什麼特性。

我:(先楞了一分鐘,臥槽咋是這個問題.......)絞盡腦汁說出了以下幾點:

         1. 增加了新語法:Lambda 表達式

         2.  Stream API

         3. 集合的底層 有新的實現實現 

         4. 新日期時間的 api

面試官:就這些嗎?那你講lambda表達式吧。(面試官打開電腦......)

我:Lambda表達式使得代碼變得更簡潔,Java8新增了java.util.funcion包,裏面包含常用的函數接口,這是Lambda表達式的基礎,Java集合框架也新增部分接口,以便與Lambda表達式對接。lambda表達式本質上是一段匿名內部類,也可以是一段可以傳遞的代碼。

面試官:哦,那繼續說一下stream。

我: 8 中的 Stream 對集合操作功能進行了增強,可以非常便利、高效的聚合操作,或者大批量數據操作,藉助於新出現的 Lambda 表達式,極大的提高編程效率和程序可讀性。同時它提供串行和並行兩種模式進行匯聚操作,併發模式能夠充分利用多核處理器的優勢,使用 fork/join 並行方式來拆分任務和加速處理過程。使用 Stream API 無需編寫一行多線程的代碼,就可以很方便地寫出高性能的併發程序。

面試官:你說fork/join,我記得jdk7裏面也有8裏面有什麼不同嗎?

我:呃呃.... 這個我記不起來了(自己給自己挖坑)。

面試官:什麼是聚合操作?什麼是流?Stream 是不是集合元素?你能細講一下嗎?

面試官來了這麼一連串的提問,我開始有點慌了,其實對於8我就記了上面那麼一點,還是面試前突擊瞭解的,面試官看我沒有答上來也就沒有多問什麼,繞開這個8新特性相關的問題了,問了一些其它基礎問題,今天在這裏就不細說了。

後面大概聊了一下我的項目是做什麼的、我負責什麼的。前前後後說了半個小時就結束了。(基礎太差,8相關的問題我都是死記硬背的,面試官估計也在電腦上查出來了,後面走時善意的提醒了我一下要注重基礎)。

回來我專門整理了一些8相關的學習資料(雖然大家都會用,但是還是要深入瞭解一下),掃一掃下面二維碼,回覆 jdk8 領取學習資料。

Contact

  • 作者:小羅
  • Email:[email protected]
  • 版權歸作者所有,轉載請註明出處
  • Wechat:掃一掃關注公衆號,小羅技術筆記,專注於開發技術的研究與知識分享,第一時間送達實用乾貨文章。

發佈了11 篇原創文章 · 獲贊 0 · 訪問量 1848
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章