OPPO Android開發技術面總結

       今天早上參加了深圳OPPO開發工程師的技術面試,總的來講面試過程不是很順利。面試官並無問一些很深奧的底層原理,基本都是一些Java基礎以及Android四大組件內的基礎,可是我自身在開發過程當中並無很重視這些理論基礎,致使不少知識點都忘記了。整個面試過程耗時一小時,感謝兩位面試官不厭其煩地給我提示,一方面讓我可以回想起來那些遺忘的知識點,另外一方面也緩解了尷尬的氣氛。。。

   順便一說,OPPO的保密工做仍是作得比較嚴格的,進去後海卓越中心大樓前須要申請臨時通行證才能進去。而在面試前還須要登記,而且把手機的先後攝像頭都給用膠帶封起來才能進行面試。廢話少說,下面分紅兩部分彙總一下此次技術面試的知識點。   面試

Java

  1. 如何理解Java的多態?其中,重載和重寫有什麼區別?
  2. 談一下JVM虛擬機內存分配?哪部分是線程公有的,哪部分是私有的?
  3. final關鍵字的用法?
  4. 死鎖是怎麼致使的?
  5. 數據庫如何進行升級?SQLite增刪改查的基礎sql語句

Android

  1. Broadcast的分類?有序,無序?粘性,非粘性?本地廣播?
  2. Touch事件是如何傳遞的?
  3. Handler的原理?
  4. ANR出現的狀況有幾種?怎麼分析解決ANR問題?
  5. 內存泄露的場景有哪些?內存泄漏分析工具使用方法?
  6. 如何實現啓動優化,有什麼工具可使用?
  7. 經常使用的設計模式有哪些?是否瞭解責任鏈模式?

總結

       如今回顧一下,問的問題並不難,只是環環相扣問出了不少細節相關的知識點。由此看來,在平常開發中還須要注重基礎。尤爲對於開發經驗是1-5年內的Android Developer,面試官考察的多數是基礎知識是否牢固,溝通表達能力,總結能力。雖然這次面試黃了,但不失爲一次很好的經歷。sql

     對於問題的答案,後面會抽時間整理總結,敬請期待。數據庫

2018-10-22更新:

關於問題的答案,已整理到我的的簡書。若有須要可移步查閱。設計模式

相關文章
相關標籤/搜索