JavaRush /Java Blog /Random-TW /面試時的技術問題
Roman Beekeeper
等級 35

面試時的技術問題

在 Random-TW 群組發布
於是,面試就照這個計畫進行了
  1. Java核心
  2. 物件導向程式設計
  3. 休息
  4. 資料庫
  5. 你使用的工具。
面試時的技術問題 - 1

Java核心

  • 首先,我被要求畫出 Collections 的介面層次結構(這並不難,只有幾個(Collection、List、Set、Queue、Map)。
  • ArrayList 和 LinkedList 有什麼區別(這是網路上最老套的問題和答案之一,只是黑暗)。
  • 我們討論了它們的查詢執行速度以及工作表之間的差異。
  • 關於物件類別的問題。他的方法是什麼,作用是什麼?
  • 反射。getClass() 方法有什麼作用?非常有趣的問題,請研究一下。特別是關於如何取得類別的所有內容,即使它包含私有方法或變數。
  • 他們詢問多線程。我認為,告訴您如何理解多線程是什麼是很弱的。啟動新線程需要什麼。實際上,如果您的等級超過 20 級,那麼這些問題對您來說會顯得很有趣。
  • 關於 Stream,你有什麼想說的話。這與 Java 8 無關。它與輸入和輸出流有關。就像基本介面一樣,它們是什麼(字元和位元組)。為了理解,不具體。
  • 例外情況。在這裡,我們再次被要求繪製異常的層次結構,有哪些類型,哪些是檢查的,哪些是未檢查的。如何處理運行時異常。說出最常見的 NullPointerException。問題是應該如何處理已檢查的異常(進一步轉發或處理 - 兩者都很清楚)。

物件導向程式設計

  • 簡而言之,什麼是 OOP?
  • 還有哪些其他程式範例?它們與 OOP 有什麼不同?
  • OOP(繼承、多態性與封裝)的基本原則是什麼?告訴我們他們每個人的情況。到目前為止,一切都是抽象的,與任何語言無關。
  • 系統設計理解任務:有一匹馬和一隻鳥。我們需要得到珀伽索斯。原則“有一個”和“是一個”

休息

  • 什麼是休息。維基百科對此進行了非常冷靜的討論。事實上,維基百科的一篇文章就夠熟悉了。
  • HTTP。這裡也有一般短語。他的方法,每種方法的用途。
  • HTTP 狀態碼。它應該分為哪五個部分?告訴我們最著名的幾個(200,204,404,500,501)。他們為什麼這麼做?他們還問了401和403,但我不認識他們。他們說他們很重要。

資料庫

這裡我告訴你我了解MySQL。他告訴我三種範式。他談論了聯接及其含義,並繪製了使用不同聯接的區域的交集。我講了我如何理解關聯式資料庫。我沒有忘記 MongoDB——它是一個 NoSQL 資料庫。過一段時間我也會寫這篇。了解和理解交易是什麼是非常好的。什麼是酸性?什麼是絕緣等級?這個知識就清楚什麼程度了。

其他工具

在這裡我們瀏覽了我的履歷。根據報導,我使用 Maven/Gradle 進行組裝,使用 JIRA 進行任務,使用 git、Docker、Swagger。用於持續整合 - Stash、Bamboo、Puppet。用於測試 JUnit、Mockito、JMeter。我可能忘記了一些東西,所以如果您有興趣,請在評論中提問,我會盡力回答。任何喜歡這篇文章並認為它有用的人 - 對其進行評分並寫在評論中。 另外,訂閱我的 github 帳戶romankh3 另請參閱我的其他文章: -如何找到工作?發送履歷的技巧。隨機小組的文章 -成功故事。每週 20 小時的程式設計、碩士學位和個人生活 -職業倦怠。如何反抗?
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION