陣子,有很多的朋友在我的知乎下方留言說馬上就要過年,過完年就是“金三銀四”了,我想在這個期間好好複習一波,你有什麼好的複習建議和複習計劃嗎?
思來想去,如果我提出有針對性的建議能對他們的複習有所幫助,但是,我並不瞭解知乎內這些朋友的情況,不知道這些朋友的技術薄弱區在哪?就無法給出相應的複習方法。在幾經考慮之後,我決定整理一份 Android 中高級面試筆記。這裏面有Android中高級工程師在面試時會碰到的技術考察點,整份PDF一共有836頁,涵蓋了Java、Android基礎、Android進階、算法、數據結構等一系列的核心知識點。
一、Java基礎
- JVM
- Object
- static
- final
- String、StringBuffer、StringBuilder
- 異常處理
- 內部類
- 多態
- 抽象和接口
- 集合框架
- 反射
- 單例
- 線程
- volatile
- synchronized
- Lock
- 引用類型
- 動態代理
- 元註解
二、Android基礎
- Activity
- Fragment
- Service
- BroadcastReceiver
- ContentProvider
- 數據存儲
- View
- 進程
- Parcelable 接口
- IPCWindow / WindowManager
- Bitmap
- 屏幕適配
- ContextSharedPreferences
- 消息機制
- 線程異步
- RecyclerView 優化
- Webview
三、Android進階知識點彙總
- ART
- Hook
- Proguard
- 架構
- Jetpack
- NDK 開發
- 類加載器
需要這份Android中高級面試資料的朋友 可以在文章下方獲取
四、性能優化知識點彙總
- 啓動優化
- 存儲優化
- 網絡優化
- 耗電優化
- 多線程併發優化
- 安裝包優化
五、Android開源庫源碼分析
- OKHttp
- Retrofit
- Glide
- GreenDao
- RxJava
- LeakCanary
- ButterKnife
- Dagger 2
- EventBus
六、Kotlin知識點彙總
- 對象
- 類
- 繼承
- 變量
- 常量
- 靜態常量
- 定義方法
- 重載方法
- 基本數據類型
- 比較類型
- 轉換符
- 字符串比較
- 數組
- 循環
- 角標循環
- 高級循環
- 判斷器
- 構造函數
- 類創建
- 私有化 set 方法
- 私有化 get 方法
- 枚舉
- 接口
- 匿名內部類
- 內部類
- 內部類訪問外部類同名變量
- 抽象類
- 靜態變量和方法
- 可變參數
- 泛型
- 構造代碼塊
- 靜態代碼塊
- 方法代碼塊
- 可見修飾符
- 無需 findViewById
- Lambda
- 函數變量
- 空安全
- 方法支持添加默認參數
- 類方法擴展
- 運算符重載
- 擴展函數
- 協程
七、設計模式彙總
- 設計模式分類
- 面向對象六大原則
- 工廠模式
- 單例模式
- 建造者模式
- 原型模式
- 適配器模式
- 觀察者模式
- 代理模式
- 責任鏈模式
- 策略模式
- 備忘錄模式
八、計算機網絡基礎
- 網絡體系的分層結構
- HTTP 相關
- TCP/IP
- Socket
九、C++知識點彙總
- 頭文件
- 數據類型
- typedef
- 類型限定符
- 定義常量
- 存儲類
- 引用 vs 指針
- struct vs class
- 成員函數
- 析構函數
- 拷貝構造函數
- friend 友元
- inline 內聯函數
- 繼承類型
- 運算符重載
- 動態內存
- 命名空間
- 預處理器
- 信號
- 線程
- 強制類型轉換
- 智能指針
- 內存空間
十、常見面試算法題彙總
- 排序
- 二叉樹
- 鏈表
- 棧 / 隊列
- 二分
- 哈希表
- 堆 / 優先隊列
- 二叉搜索樹
- 數組 / 雙指針
- 貪心
- 字符串處理
- 動態規劃
- 矩陣
- 二進制 / 位運算
- 其他
總結
其實整個面試過程是一個不斷認清自己的過程,所以自我心態是最重要的,我們要把面試當成一個學習和成長的過程,大部分人能得到的結果是和我們過去的努力程度直接掛鉤的,所以永遠不要抱怨什麼,我們今天的現狀往消極了說是在爲過去的選擇買單,往積極了說還要感謝那個曾經努力過的騷年。
PS:如有需要這份《Android中高級面試筆記》的朋友 “掃描下方二維碼即可免費打包獲取”