亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

2019 Android 面試真題集錦

  發(fā)布時(shí)間:2019-08-28 16:15:45   作者:nanchen2251   我要評(píng)論
這篇文章主要介紹了2019 Android 面試真題集錦,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

南塵在 2019 年 7 月毫無(wú)準(zhǔn)備的情況下也參加了幾家一線互聯(lián)網(wǎng)公司的面試,包括阿里、頭條、快手、趣頭條、BIGO、訊飛、OPPO,也熙熙攘攘拿了幾個(gè) offer,最終選取了其中一家公司進(jìn)行入職。

每次面試后,其實(shí)也有進(jìn)行面試題的一些收集和總結(jié),確實(shí),面試其實(shí)就是一次查漏補(bǔ)缺的過(guò)程。本著對(duì)公司負(fù)責(zé)的態(tài)度,這里就不說(shuō)面試題來(lái)自哪家公司了。不過(guò)還是要把記錄下來(lái)的這些真題分享給大家。

另外,面試題一般都是基礎(chǔ) && 項(xiàng)目?jī)刹糠纸Y(jié)合,而且還要看面試官當(dāng)時(shí)對(duì)你的準(zhǔn)備,所以面試真題雖然「真」,但卻僅僅只能作為大家準(zhǔn)備面試的一個(gè)大綱吧。

當(dāng)然,有些題目沒(méi)記錄完全,有些題目也出現(xiàn)多家公司提問(wèn),這里就不重復(fù)了。

Java 基礎(chǔ)部分

基本這些公司都會(huì)問(wèn)到相關(guān)基礎(chǔ),所以,一般來(lái)說(shuō)基礎(chǔ)的準(zhǔn)備是必要并且通用的,所以這部分真的很重要。

1、HashMap 和 HashTable 以及 CurrentHashMap 的區(qū)別。

一般來(lái)說(shuō),這三個(gè)東西基本在面試中 70% 會(huì)被問(wèn)到,而問(wèn)的方向也不太一樣。比如初級(jí)的問(wèn)法是講講它們之前的區(qū)別,這個(gè)我想沒(méi)什么難度,大多數(shù)人還是知道主要核心區(qū)別是并發(fā)上的處理。此外,內(nèi)部數(shù)據(jù)結(jié)構(gòu)的實(shí)現(xiàn)、擴(kuò)容、存取操作這些問(wèn)題應(yīng)該是很老生常談了,這并沒(méi)有什么好說(shuō)的,大多數(shù)人也都知道。稍微問(wèn)的深一點(diǎn)的可能會(huì)在下面這些點(diǎn)上出問(wèn)題。哈希碰撞,哈希計(jì)算,哈希映射,為什么是頭插法,擴(kuò)容為什么是 2 的冪次等這樣的問(wèn)題。

2、synchronized 和 volatile 、ReentrantLock 、CAS 的區(qū)別。

這個(gè)問(wèn)題被問(wèn)頻率不在 HashMap 之下,因?yàn)椴l(fā)編程,真的很重要。能問(wèn)到這幾個(gè)點(diǎn)的方式真的是太多了,我們能發(fā)揮的空間也同樣很大。CAS 的 ABA 問(wèn)題?上面幾個(gè)東西的特性?使用場(chǎng)景?大概我不用再例舉了吧?對(duì)了,我多次被問(wèn)到的一個(gè)問(wèn)題是:synchronized 修飾實(shí)例方法和修飾靜態(tài)方法有啥不一樣。

3、JVM 類(lèi)加載機(jī)制、垃圾回收算法對(duì)比、Java 虛擬機(jī)結(jié)構(gòu)等。

這三個(gè)問(wèn)題大概出現(xiàn)概率 40%,基本只需要看我每日一問(wèn)系列的推文就差不多了吧,希望更清楚明白的可以直接看《深入理解 Java 虛擬機(jī)》。當(dāng)你講到分代回收算法的時(shí)候,不免會(huì)被追問(wèn)到新生對(duì)象是怎么從年輕代到老年代的,以及可以作為 root 結(jié)點(diǎn)的對(duì)象有哪些兩個(gè)問(wèn)題。

4、Java 的四大引用

四大引用面試出現(xiàn)概率比我想象中要高,我原本以為就強(qiáng)引用、軟引用、弱引用、虛引用這四個(gè)玩意兒沒(méi)啥可講的。實(shí)際上也確實(shí)沒(méi)啥好講的,稍微問(wèn)的深一些的面試官會(huì)和內(nèi)存泄漏檢測(cè)原理以及垃圾回收糅雜在一起。

5、Java 的泛型,<? super T> 和 <? extends T> 的區(qū)別。

Java 泛型還是會(huì)在面試中出現(xiàn)的,不過(guò)幾率不是很高,大概是因?yàn)槲液?jiǎn)歷中有提到泛型擦除相關(guān)的東西。所以會(huì)被問(wèn)到泛型、泛型擦除、通配符相關(guān)的東西。不過(guò)這個(gè)東西,不應(yīng)該是為了應(yīng)付面試,實(shí)際開(kāi)發(fā)中真的很重要。

6、Java 線程有哪些狀態(tài),有哪些鎖,各種鎖的區(qū)別。

這個(gè)問(wèn)題講真,我也只懂一點(diǎn)皮毛,并且當(dāng)時(shí)回答不是很全面,出現(xiàn)概率的話,不是很高吧。

7、final 、finally、finalize 區(qū)別。

老生常談的問(wèn)題,沒(méi)啥好說(shuō)的,實(shí)際上這次社招面試也只遇到了兩次。比較喜歡追根溯源的面試官可能會(huì)對(duì)這個(gè) finalize 有點(diǎn)執(zhí)念,一定希望搞清楚,這玩意兒我們是不是可以真的搞點(diǎn)黑科技騷操作。

8、接口和抽象類(lèi)的區(qū)別。

沒(méi)想到還被問(wèn)了一次這個(gè),這玩意兒給我的感覺(jué)就是隨時(shí)都在用,但真要較真,還真不能一口氣把所有區(qū)別都信手拈來(lái)。

9、sleep 、wait、yield 的區(qū)別,wait 的線程如何喚醒它?

大多數(shù) Android 應(yīng)用開(kāi)發(fā)并接觸不到很多并發(fā)相關(guān)的東西,不過(guò)這玩意兒還是在面試中挺容易出現(xiàn)的。

計(jì)算機(jī)網(wǎng)絡(luò)部分。

計(jì)算機(jī)網(wǎng)絡(luò)部分還是挺容易考察的,不過(guò)考察的點(diǎn)不會(huì)那么深入。通常來(lái)說(shuō)也就是這些問(wèn)題:

  1. TCP 有哪些狀態(tài)。
  2. 三次握手、四次揮手。為啥是三次不是兩次?
  3. HTTPS 和 HTTP 的區(qū)別。HTTPS 2.0,3.0?
  4. 瀏覽器輸入一個(gè) URL,按下回車(chē)網(wǎng)絡(luò)傳輸?shù)牧鞒蹋?/li>
  5. 喜歡深問(wèn)一點(diǎn)的還會(huì)問(wèn)到網(wǎng)絡(luò)架構(gòu),每層有些什么協(xié)議,F(xiàn)TP 這些相關(guān)原理,印象比較深刻的還有一個(gè)問(wèn)題是:TCP 建立連接后,發(fā)包頻率是怎樣的?

Android 部分

Android 很廣,所以這里只是簡(jiǎn)單說(shuō)下有些什么問(wèn)題。這個(gè)的話其實(shí)真的 70% 問(wèn)題出自你的簡(jiǎn)歷。

  • Activity 的生命周期;
  • Android 的 4 大啟動(dòng)模式,注意 onNewIntent() 的調(diào)用;
  • 組件化架構(gòu)思路,如何從一個(gè)老項(xiàng)目一步一步實(shí)現(xiàn)組件化,主要問(wèn)實(shí)現(xiàn)思路,考察應(yīng)試者的架構(gòu)能力和思考能力。這一塊內(nèi)容真的很多,你需要考慮的問(wèn)題很多,哪一步做什么,順序很重要。
  • MVC、MCP、MVVP 的區(qū)別和各種使用場(chǎng)景,如何選擇適合自己的開(kāi)發(fā)架構(gòu)?
  • Router 原理,如何實(shí)現(xiàn)組件間通信,組件化平級(jí)調(diào)用數(shù)據(jù)方式。
  • 系統(tǒng)打包流程;
  • APP 啟動(dòng)流程;
  • 如何做啟動(dòng)優(yōu)化?冷啟動(dòng)什么的肯定是基礎(chǔ),后續(xù)應(yīng)該還有的是懶加載,丟線程池同步處理,需要注意這里可能會(huì)有的坑是,丟線程池如何知道全部完成。
  • 事件分發(fā)機(jī)制。事件分發(fā)已經(jīng)不是直接讓你講了,會(huì)給你具體的場(chǎng)景,比如 A 嵌套 B ,B 嵌套 C,從 C 中心按下,一下滑出到 A,事件分發(fā)的過(guò)程,這里面肯定會(huì)有 ACTION_CANCEL 的相關(guān)調(diào)用時(shí)機(jī)。
  • 如何檢測(cè)卡頓,卡頓原理是什么,怎么判斷是頁(yè)面響應(yīng)卡頓還是邏輯處理造成的卡頓?
  • 生產(chǎn)者模式和消費(fèi)者模式的區(qū)別?
  • 單例模式雙重加鎖,為什么要這樣做。
  • Handler 機(jī)制原理,IdleHandler 什么時(shí)候調(diào)用。
  • LeakCanary 原理,為什么檢測(cè)內(nèi)存泄漏需要兩次?
  • BlockCanary 原理。
  • ViewGroup 繪制順序;
  • Android 有哪些存儲(chǔ)數(shù)據(jù)的方式。
  • SharedPrefrence 源碼和問(wèn)題點(diǎn);
  • 講講 Android 的四大組件;
  • 屬性動(dòng)畫(huà)、補(bǔ)間動(dòng)畫(huà)、幀動(dòng)畫(huà)的區(qū)別和使用場(chǎng)景;
  • 自定義 ViewGroup 如何實(shí)現(xiàn) FlowLayout?如何實(shí)現(xiàn) FlowLayout 調(diào)換順序?
  • 自定義 View 如何實(shí)現(xiàn)打桌球效果;
  • 自定義 View 如何實(shí)現(xiàn)拉弓效果,貝瑟爾曲線原理實(shí)現(xiàn)?
  • APK 瘦身是怎么做的,只用 armabi-v7a 沒(méi)有什么問(wèn)題么?APK 瘦身這個(gè)基本是 100% 被面試問(wèn)到,可能是我簡(jiǎn)歷上提到的原因。
  • ListView 和 RecyclerView 區(qū)別?RecyclerView 有幾層緩存,如何讓兩個(gè) RecyclerView 共用一個(gè)緩存?
  • 如何判斷一個(gè) APP 在前臺(tái)還是后臺(tái)?
  • 如何做應(yīng)用保活?全家桶原理?
  • 講講你所做過(guò)的性能優(yōu)化。
  • Retrofit 在 OkHttp 上做了哪些封裝?動(dòng)態(tài)代理和靜態(tài)代理的區(qū)別,是怎么實(shí)現(xiàn)的。
  • 講講軌跡視頻的音視頻合成原理;
  • AIDL 相關(guān);
  • Binder 機(jī)制,講講 Linux 上的 IPC 通信,Binder 有什么優(yōu)勢(shì),Android 上有哪些多進(jìn)程通信機(jī)制?
  • RxJava 的線程切換原理。
  • OkHttp 和 Volloy 區(qū)別;
  • Glide 緩存原理,如何設(shè)計(jì)一個(gè)大圖加載框架。
  • LRUCache 原理;
  • 講講咕咚項(xiàng)目開(kāi)發(fā)中遇到的最大的一個(gè)難題和挑戰(zhàn);
  • 這個(gè)問(wèn)題基本是 95% 必問(wèn)的一個(gè)問(wèn)題;
  • 說(shuō)說(shuō)你開(kāi)發(fā)最大的優(yōu)勢(shì)點(diǎn)。出現(xiàn)率同上。
     

算法

  • String 轉(zhuǎn) int。核心算法就三行代碼,不過(guò)臨界條件很多,除了判空,還需要注意負(fù)數(shù)、Integer 的最大最小值邊界等;
  • 如何判斷一個(gè)單鏈表有環(huán)?
  • 鏈表翻轉(zhuǎn);
  • 快排;
  • 100 億個(gè)單詞,找出出現(xiàn)頻率最高的單詞。要求幾種方案;
  • 鏈表每 k 位逆序;
  • 鏡像二叉樹(shù);
  • 找出一個(gè)無(wú)序數(shù)組中出現(xiàn)超過(guò)一半次數(shù)的數(shù)字;
  • 計(jì)算二叉樹(shù)的最大深度,要求非遞歸算法。
  • String 方式計(jì)算加法。

HR 面

  • 你為什么離開(kāi)咕咚?
  • 你的缺點(diǎn)是什么?
  • 你能給公司帶來(lái)什么效益?
  • 你對(duì)未來(lái)的職業(yè)規(guī)劃?

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 華為Android三面成功通過(guò)面試官都問(wèn)了什么

    這篇文章主要介紹了華為Android三面成功通過(guò),面試官都問(wèn)了什么,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-26
  • Android 一線大廠面試總結(jié)

    這篇文章主要介紹了Android 一線大廠面試總結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-08
  • 2019年Android高級(jí)面試題與相關(guān)知識(shí)點(diǎn)總結(jié)

    這篇文章主要介紹了2019年Android高級(jí)面試題與相關(guān)知識(shí)點(diǎn),總結(jié)分析了Android開(kāi)發(fā)中涉及的各種常見(jiàn)知識(shí)點(diǎn)與相關(guān)原理,需要的朋友可以參考下
    2019-11-21
  • 2019年必備的Android面試題及參考答案收集匯總

    這篇文章主要介紹了2019年必備的Android面試題及參考答案,整理匯總了Android開(kāi)發(fā)中常見(jiàn)的各種知識(shí)點(diǎn)、技術(shù)細(xì)節(jié)與注意事項(xiàng),需要的朋友可以參考下
    2019-10-30
  • 2019 金三銀四:阿里P9架構(gòu)的Android大廠面試題總結(jié)

    面試是一道坎,很多人會(huì)恐懼面試,即使是工作很多年的老鳥(niǎo),可能仍存在面試的焦慮。 今天介紹了阿里P9架構(gòu)的Android大廠面試題總結(jié)的相關(guān)資料,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分
    2019-05-05
  • 這20道題,聽(tīng)說(shuō)只有大廠的Android工程師能全對(duì)

    這篇文章主要介紹了這20道題,聽(tīng)說(shuō)只有大廠的Android工程師能全對(duì),趕快一起來(lái)測(cè)試一下自己把,看看是不是都掌握了
    2020-05-25

最新評(píng)論