天天看點

Android進階面試題大全網絡協定Java基礎Android基礎著名開源架構原理自動化建構以及Gradle設計模式Kotlin以及Jetpack

Android進階面試題大全

  • 網絡協定
    • tcp/ip協定的分層
    • http的包結構
    • http的連接配接池
    • http的三次握手,四次揮手
    • https的介紹
    • https的連接配接過程
  • Java基礎
    • JVM結構
    • 基礎類型的記憶體占位
    • gc的記憶體回收機制
    • 堆和棧的概念
    • 新生态和老年态
    • 強,軟,弱,虛引用
    • Collection的子集分布
    • HashMap的存儲過程
    • HashMap和HashTab的差別
    • 多線程安全
  • Android基礎
    • App的啟動流程
    • Activity的生命周期與Fragment的生命周期
    • Service的啟動方式以及差別
    • 廣播的分類以及實作原理
    • Binder如何實作跨程序通信
    • Handler的實作
    • ActivityManagerService的了解
    • WindowManagerService的了解
    • View的繪制流程
    • ViewGroup的事件傳遞和滑動沖突
    • NesedScrollView的源碼說明
    • 頁面優化
    • Android的記憶體管理機制
    • 記憶體洩露的說明和常見情況處理
    • ANR的說明以及原理
    • OOM常見原因和解決方案
    • 熱更新技術與ClassLoader
    • 多屏适配的方案及原理
    • Android常見的存儲方式
  • 著名開源架構原理
    • Okhttp
    • Retrofit
    • Rxjava
    • Glide
    • ButterKnife
    • EventBus
  • 自動化建構以及Gradle
    • gradle的生命周期
    • 自定義task
  • 設計模式
    • MVC
    • MVP
    • MVVM
    • 單例
    • 觀察者
    • 工廠模式
    • Builder模式
    • adapter
  • Kotlin以及Jetpack

我将之前碰到的所有面試題總結出來,也是對自己知識體系的系統性總結:

網絡協定

tcp/ip協定的分層

TCP/IP 是一類協定系統,它是用于網絡通信的一套協定集合。

傳統上來說 TCP/IP 被認為是一個四層協定

Android進階面試題大全網絡協定Java基礎Android基礎著名開源架構原理自動化建構以及Gradle設計模式Kotlin以及Jetpack
  1. 網絡接口層:

    主要是指實體層次的一些接口,比如電纜等。

  2. 網絡層:

    提供獨立于硬體的邏輯尋址,實作實體位址與邏輯位址的轉換。

    在 TCP / IP 協定族中,網絡層協定包括 IP 協定(網際協定),ICMP 協定( Internet 網際網路控制封包協定),以及 IGMP 協定( Internet 組管理協定)。

  3. 傳輸層:

    為網絡提供了流量控制,錯誤控制和确認服務。

    在 TCP / IP 協定族中有兩個互不相同的傳輸協定: TCP(傳輸控制協定)和 UDP(使用者資料報協定)。

  4. 應用層:

    為網絡排錯,檔案傳輸,遠端控制和 Internet 操作提供具體的應用程式。

http的包結構

http的連接配接池

http的三次握手,四次揮手

https的介紹

https的連接配接過程

Java基礎

JVM結構

Android進階面試題大全網絡協定Java基礎Android基礎著名開源架構原理自動化建構以及Gradle設計模式Kotlin以及Jetpack

JVM被分為三個主要的子系統:

(1)類加載器子系統(2)運作時資料區(3)執行引擎

類加載器:啟動類加載器 (BootStrap class Loader)、擴充類加載器(Extension class Loader)和應用程式類加載器(Application class Loader) 這三種類加載器幫助完成類的加載。

基礎類型的記憶體占位

gc的記憶體回收機制

堆和棧的概念

新生态和老年态

強,軟,弱,虛引用

Collection的子集分布

HashMap的存儲過程

HashMap和HashTab的差別

多線程安全

Android基礎

App的啟動流程

Activity的生命周期與Fragment的生命周期

Service的啟動方式以及差別

廣播的分類以及實作原理

Binder如何實作跨程序通信

Handler的實作

ActivityManagerService的了解

WindowManagerService的了解

View的繪制流程

ViewGroup的事件傳遞和滑動沖突

NesedScrollView的源碼說明

頁面優化

Android的記憶體管理機制

記憶體洩露的說明和常見情況處理

ANR的說明以及原理

OOM常見原因和解決方案

熱更新技術與ClassLoader

多屏适配的方案及原理

Android常見的存儲方式

著名開源架構原理

Okhttp

Retrofit

Rxjava

Glide

ButterKnife

EventBus

自動化建構以及Gradle

gradle的生命周期

自定義task

設計模式

MVC

MVP

MVVM

單例

觀察者

工廠模式

Builder模式

adapter

Kotlin以及Jetpack

繼續閱讀