本篇文章的所有知識點是親身經歷十餘家一二線網際網路企業面試後總結產出,包含應聘Android開發崗位的各個方面的高頻知識點,主要針對但不侷限於Android應屆面試。以下所有知識點都整理髮布在Github/Gitbook,方便大家整理學習,文末附有連結。
Java
Java基礎
- Java集合框架
- Java集合——ArrayList
- Java集合——LinkedList
- Java集合——HashMap
- Java集合——TreeMap
- Java集合——LinkedHashMap
- Java泛型
- Java反射(一)
- Java反射(二)
- Java反射(三)
- Java註解
- Java IO(一)
- Java IO(二)
- RandomAccessFile
- Java NIO
- Java異常詳解
- Java抽象類和介面的區別
- Java深拷貝和淺拷貝
- Java transient關鍵字
- Java finally與return執行順序
- Java 8 新特性
Java併發
- Java建立執行緒的三種方式
- Java執行緒池
- 死鎖
- Synchronized/ReentrantLock
- 生產者/消費者模式
- volatile關鍵字
- CAS原子操作
- AbstractQueuedSynchronizer詳解
- 深入理解ReentrantLock
- Java併發集合——ArrayBlockingQueue
- Java併發集合——LinkedBlockingQueue
- Java併發集合——ConcurrentHashMap
Java虛擬機器
- 物件的建立、記憶體佈局和訪問定位
- Java記憶體區域與記憶體模型
- Java類載入機制及類載入器詳解
- JVM中垃圾收集演算法及垃圾收集器詳解
- JVM怎麼判斷物件是否已死?
Android
Android基礎
- Activity全方位解析
- Service全方位解析
- BroadcastReceiver全方位解析
- ContentProvider全方位解析
- Fragment詳解
- Android訊息機制
- Android事件分發機制
- AsyncTask詳解
- HandlerThread詳解
- IntentService詳解
- LruCache原理解析
- Window、Activity、DecorView以及ViewRoot之間的關係
- View測量、佈局及繪製原理
- Android虛擬機器及編譯過程
- Android程式間通訊方式
- Android Bitmap壓縮策略
- Android動畫總結
- Android程式優先順序
- Android Context詳解
Android進階
- Android多執行緒斷點續傳
- Android全域性異常處理
- Android MVP模式詳解
- Android Binder機制及AIDL使用
- Android Parcelable和Serializable的區別
- 一個APP從啟動到主頁面顯示經歷了哪些過程?
- Android效能優化總結
- Android 記憶體洩漏總結
- Android佈局優化之include、merge、ViewStub的使用
- Android許可權處理
- Android熱修復原理
- Android外掛化入門指南
- VirtualApk解析
- Android推送技術解析
- Android Apk安裝過程
- PopupWindow和Dialog區別
開源框架
- OkHttp解析
- Retrofit解析
- EventBus解析
資料結構
- 線性表
- 棧和隊
- 樹
- 樹的基礎
- 其他常見的樹
- 並查集
- B-樹,B+樹,B*樹
- 圖
- 圖的基礎
- 拓撲排序
- Kruskal演算法
- Prim演算法
- Dijkstra演算法
- Floyd演算法
- 雜湊查詢
- 排序
- 海量資料處理
演算法
- 劍指offer
- LeetCode
設計模式
- 建立型模式
- 簡單工廠模式
- 工廠方法模式
- 抽象工廠模式
- 單例模式
- 建造者模式
- 結構型模式
- 介面卡模式外觀模式
- 裝飾者模式
- 代理模式
- 行為型模式
- 命令模式
- 迭代器模式
- 觀察者模式
- 策略模式
- 模板方法模式
計算機網路
- TCP/IP
- HTTP
- HTTPS
作業系統
- 概述
- 程式與執行緒
- 記憶體管理
資料庫
- SQL語句
Github地址:github.com/LRH1993/and…