首頁 > 娛樂資訊 > 開心樂園 > 程式設計師面試最愛被問到的10個問題

程式設計師面試最愛被問到的10個問題

來源:星女圈    閱讀: 1.28W 次
字號:

用手機掃描二維碼 在手機上繼續觀看

手機檢視

程式設計師面試最愛被問到的10個問題,在職場上不得不注意這些,想要面試順暢,就要提早了解面試官的問題。下面是程式設計師面試最愛被問到的10個問題,希望對大家有幫助!

程式設計師面試最愛被問到的10個問題1

為什麼會這麼嚴重?這是因為問題的答案能反映一個人的情況,而且問題本身也能告訴面試人員有關公司的一些情況。如果面試問題很糟糕,那麼即使面試過程再完美,有可能你挑選出來的也並非最優秀的人才。話說沒什麼人願意和一些技術能力差的傢伙共事,而程式設計師更加受不了這種情況。至少,我是這樣。

因此,為了確保能找到真正優秀的程式設計師,並且不至於嚇跑他們,以下這些問題必須涉及真的,會寫,能寫,程式碼?

能夠把事情辦好可靠?

有點書呆子性格,樂於助人?

程式設計師面試最愛被問到的10個問題

喜歡學習新事物

基於上面這些要點,我整理出10個面試問題。如果是我的話,作為一個程式設計師在面試的時候要是被問及這10個問題,我會覺得以後我肯定能在這家公司愉快工作。

1、你最喜歡的程式語言是什麼?

2、你討厭哪些程式語言?為什麼?

3、如果讓你在自己最常用的程式語言上面新增功能,你希望是什麼功能?

4、說一個你曾經參與過的專案,在這過程中經歷了哪些困難,最後如何克服? 你有沒有幹過什麼事情最後卻鎩羽而歸?

5、在某個休息天,突然有同事打電話來要你快速回復有關於你最近寫的程式碼片段的問題,你會不會覺得生氣煩躁?

6、你被要求去搞定一堆艱鉅的程式碼,但是你卻不知道它是如何工作的,沒有文件也沒有測試,你會怎麼做?

7、在zelda系列中你最喜歡什麼遊戲?你還喜歡哪些?

8、是否曾想過如果是你先開發的minecraft,那會怎麼樣?

9、你喜歡什麼網站? 你會推薦什麼書作為必讀?

10、最後一個但並非是最不重要的,請解釋以下名詞:dry、solid、yagni、樂觀鎖與悲觀鎖)、mvc與mvvm(可自行新增)

此外,寫程式碼能力也是不可忽視的。可以讓他們展示自己寫的程式碼或者實現一個你現場要求的功能。真正有能力的程式設計師會為自己的程式碼感到驕傲,所以可以好好觀察一下,看看他們是否樂意並勇於展示自己的程式碼。

程式設計師面試最愛被問到的10個問題2

1、 以滿分十分來評估自己——你有多擅長 Java?

如果你並不完全確信你自己或是你對 Java 的熟練程度,那麼這會是一個非常棘手的問題。如果有這種情況,你應該把打分調低一點。之後,你大概會得到與你承認的水平相符的問題。因此,假如你給自己滿分,卻不能回答一個有點難的問題,那將會對你不利。

2、闡述 Java 7 和 Java 8 的區別。

實話說,兩者有很多不同。如果你能列出最重要的,應該就足夠了。你應該解釋 Java 8 中的新功能。想要獲得完整清單,請訪問官網:Java 8 JDK。

程式設計師面試最愛被問到的10個問題 第2張

你應該知道以下幾個重點:

lambda 表示式:Java 8 版本引入的一個新特性。lambda 表示式允許你將功能當作方法引數或將程式碼當作資料。lambda 表示式還能讓你以更簡潔的方式表示只有一個方法的介面 (稱為函式式介面) 的例項。

方法引用:為已命名方法提供了易於閱讀的 lambda 表示式。

預設方法:支援將新功能新增到類庫中的介面,並確保與基於這些介面的舊版本的程式碼的二進位制相容性。

重複註解:支援在同一宣告或型別上多次應用同一註解型別。

型別註解:支援在任何使用型別的地方應用註解,而不僅限於宣告。此特性與可插入型系統一起使用時,可增強對程式碼的型別檢查。

3、 你瞭解哪些集合型別?

你應該知道以下幾個最重要的型別:

ArrayList

LinkedList

HashMap

HashSet

之後,你可能會被問到這樣一些問題,比如何時應該使用此種特定型別,它比其他的好在哪裡,它是怎麼儲存資料的以及隱匿在其後的資料結構是什麼。

最好的方法是儘可能多地瞭解這些集合型別,因為這類問題幾乎是無窮盡的。

4、 Object 類包含哪些方法?

這是一個非常常見的問題,用來確定你對基礎知識的熟悉程度。

以下是每個物件都具有的方法:

在包中,Object 類位於類層次結構的頂端。每個類都是Object類直接或間接的子類。你使用或編寫的每個類都繼承了Object類中的例項方法。你並不需要使用這些方法中的任何一種,但是,如果你選擇這樣做,則可能需要用你的類的特定程式碼來重寫這些方法。

以下是本節所討論的從 Object 類中繼承的方法:

protected Object clone() throws CloneNotSupportedException建立並返回此物件的副本。

public boolean equals(Object obj)判斷另一物件與此物件是否「相等」。

protected void finalize() throws Throwable當垃圾回收機制確定該物件不再被呼叫時,垃圾回收器會呼叫此方法。

public final Class getClass()返回此物件的執行時類。

public int hashCode()返回此物件的雜湊碼值。

public String toString()返回此物件的字串表示形式。

Object 類的 notify,notifyAll 和 wait 方法都在同步程式中獨立執行執行緒的活動方面發揮了作用,這將在後面的課程中討論,在此不做介紹。

其中有五種方法:

public final void notify()

public final void notifyAll()

public final void wait()

public final void wait(long timeout)

public final void wait(long timeout, int nanos)

5、 為什麼 String 物件是不可變的?

字串池之所以可能,就是因為字串在 Java 中是不可變的`。由此 Java 執行時環境節省了大量堆空間,因為不同的 String 變數可以引用池中的同一 String 變數。如果 String 不是不可變的, 則字串駐留(String interning)將是不可能的,因為一旦任一變數更改所引用的String物件的值,它也會反映在其他變數中。

如果字串不是不可變的,那麼它可能會對應用程式造成嚴重的安全威脅。例如,資料庫使用者名稱和密碼都作為 String 傳遞以獲取資料庫連線,Socket 程式設計的主機和埠資訊也是如此。由於字串是不可變的,因此其值不能被更改。否則,任何黑客都可以篡改其引用的值,這會導致應用程式中的安全問題。

由於 String 是不可變的,因此它對與多執行緒處理來說是安全的,並且可以在不同的執行緒之間共享單個 String 例項。這避免了為執行緒安全使用同步;字串是隱式執行緒安全的。

字串被用在 Java 類載入器中,其不可變性為類載入器載入正確的類提供了安全性。否則的話,請考慮這樣一個危險的情況,在你嘗試載入java。sql。Connection類時,你引用的值卻被更改為myhacked。Connection,並且它能對資料庫執行你不需要的操作

由於 String 是不可變的,因此在它被建立時其雜湊碼就被快取,不需要再次計算。這使得它成為對映中鍵的理想物件,它的處理速度比其他HashMap鍵型別快。這就是為什麼 String 是HashMap中最常用的鍵型別。

6、 final,finally,和 finalize 三者之間有什麼不同?

這是我最喜歡的問題。

final關鍵字用於在多個語境下定義只能分配一次的實體。

finally程式碼塊是用於執行重要程式碼 (如關閉連線、流等) 的程式碼塊。無論是否處理異常,finally程式碼塊總會被執行。finally程式碼塊緊隨try程式碼塊或catch程式碼塊。

這是在刪除或銷燬物件之前垃圾回收器總會呼叫的方法,該方法使得垃圾回收機制能夠執行清理活動。

7、什麼是菱形繼承問題?

菱形繼承問題反映了為什麼在 Java 中我們不被允許實現多繼承。如果有兩個類共同繼承一個有特定方法的超類,那麼該方法會被兩個子類重寫。然後,如果你決定同時繼承這兩個子類,那麼在你呼叫該重寫方法時,編譯器不能識別你要呼叫哪個子類的方法。

我們把這個問題稱為 菱形繼承問題 。上圖對它作了說明,它也得名於此。

8、 如何使一個類不可變?

我認為這是一個相當困難的問題。您需要對類進行多次修改,以實現不可變性:

將類宣告為final,使其無法被繼承。

所有域都用private修飾,不允許直接訪問。

不提供變數的setter方法。

所有可變域都用final修飾, 使它的值只能分配一次。

通過建構函式執行深克隆初始化所有域。

對getter方法獲取的物件執行克隆以返回副本,而不是返回實際的物件引用。

9、 什麼是單例模式?

單例模式是指一個類僅允許建立其自身的一個例項,並提供對該例項的訪問許可權。它包含靜態變數,可以容納其自身的唯一和私有例項。它被應用於這種場景——使用者希望類的例項被約束為一個物件。在需要單個物件來協調整個系統時,它會很有幫助。

10、 什麼是依賴注入?

這是你必須知道的首要問題, 無論你是使用 Java EE 還是 Spring 框架。你可以看看我的文章,其中進一步地解釋了這一點: 什麼是依賴注入?

總結

在本文中,我們討論了最常見的十個 Java 面試題——在我看來這是根據我的經驗總結出的時下最重要的問題。如果你瞭解這些問題,我相信你能在面試中獲得很大的優勢。

時尚熱點
影視資訊
娛樂爆料
明星動態
電影電視
音樂圈
開心樂園