Android面試指南

Android面試指南

Java部分:

面向對象:
java中的四大特性是什麼?

解釋繼承和多態?

java 支持多繼承嗎?如果不支持,如何實現?

方法重載和方法覆蓋的區別?
基本知識:
java支持的基本類型有哪些?自動拆裝箱是什麼?

static和final的作用

什麼是值傳遞和引用傳遞?

String 和StringBuffer,StringBuilder的區別
泛型:
java 的泛型以及泛型擦除是什麼?

泛型中的非限定和限定泛型的區別
I/O:
熟悉常見的字節流和字符流類
反射:
什麼是反射?反射機制是什麼?
註解:
註解的概念以及元註解
容器:
常見的線程安全的容器有哪些?

HashMap和HashTable 的區別?

java中的hashMap的工作原理
併發:
進程和線程的區別?

創建線程的幾種方法?有什麼異同?

線程的幾種狀態間的轉換

volatile和atomic有什麼不同?

ThreadLocal 的原理

Thread類中的start和run 有什麼區別

線程同步的方式

Callable和Runnable的區別

CurrentHashMap的工作原理

線程池的概念以及應用

原子性和可見性

死鎖的必要條件
虛擬機:
java 中四種引用,以及應用場景

JVM內存分區,每個區的作用

java的垃圾回收機制和回收算法

java的類加載機制?和雙親委派模型

java的內存模型

Android部分:

四大組件:
Activity的生命週期

onSaveInstance和onRestoreInstanceState調用的時機和過程

onNewIntent 的調用

Activity 的四種啓動模式

fragment的生命週期和Activity如何通信

廣播的註冊方式
View體系:
View 的繪製流程

touchEvent 的事件傳遞機制

自定義View 的流程,以及自己做過最複雜的View
消息傳遞機制:
Handler和Looper的使用和實現機制
HandlerThread的概念
進程間通信:
AIDL的工作流程
動畫:
view動畫和屬性動畫的區別
性能優化:
android 如何檢查內存泄露

佈局優化
數據存儲:
數據庫如何升級
網絡請求:(xml,json)
框架源碼分析:
Volley框架原理和源碼分析

android動態加載框架原理
黑科技:
推送的實現?心跳包的實現 

App如何防止被殺
混合開發:
html5和hybird的混合開發
新技術:
Rxjava是否用過
設計模式:
常用的設計模式?講講你最熟悉的
數據結構:
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章