天天看點

Android&Java面試題簡介問題總結

簡介

最近由于在找工作,然後期間也遇到了許多的面試和筆試題,下面總結一下,希望可以幫助到一些朋友吧。

問題

Android

1.Handler機制原理,大緻的說一下?有沒有更加深入的了解源碼?

2.自定義View的流程?

3.Android程序間的通信,線程間的通信?

4.簡述一下事件分發,項目中是否有用到,如何解決?

5.談談Activity的生命周期?

6.Activity的幾種啟動模式,使用場景?

7.RecycleView加載圖檔異位是如何解決的?

8.RecycleView的優化?

9.MVP、MVC、MVVM的差別,你項目中使用哪種?

10.大概說一下Android5.0到Android9.0各個版本的特性,然後在開發中解決了哪些難題?

11.談談你對動畫的了解,項目中有使用到嗎?

12.Activity生命周期A跳轉到B執行的生命周期是怎麼樣的?為什麼要這麼設計呢?

13.平時使用的這些架構有沒有去深入的看一下源碼?看過哪個就說一下?

14.自定義View和ViewGroup的差別,預設的方式在源碼中你是否去看過?

15.什麼是記憶體溢出、記憶體洩漏,項目中是怎麼解決的?

16.談談你對service服務的了解,項目中是否用到?

17.線程和程序的差別?談談你對他們的了解?

18.談談你對線程死鎖的了解?

19.談談你對Android四大元件的了解?簡要概括

20.View的繪制流程?

21.invalidate和postInvalidate差別?使用場景

22.WebView如何解決記憶體洩漏?

23.WebView與中的Android怎麼跟js互動呢?

24.Android橫豎屏切換的生命周期?

25.四大元件分别是什麼,簡單介紹下

26.廣播的種類,和注冊方式的差別

27.service的類型和啟動方式

28.listview的優化,和recyclerview的差別,recyclerview的分析,為什麼用recyclerview?

29.動畫的種類,屬性動畫怎麼做的,怎麼平移動畫等

30.handler,非子線程能否更新ui

31.圖檔加載怎麼設計,不用架構的話,加載原理是啥,圖檔過大怎麼處理,方法?

32.怎麼做下拉重新整理和上拉加載

33.scrollview和lisitview一起用的話你會怎麼用

34.網絡請求你用什麼架構

35.picacosa和fesco還有glide源碼分析,原理,和差別,為什麼用glide

36.如果父布局是300300 要放400400的textview怎麼實作

37.設定大小的機關 除了dp和sp還有啥

38.如果螢幕放了一張圖檔,怎麼計算圖檔的記憶體

39.怎麼計算圖檔的尺寸大小

40.如果沒有适配的工具去生成對應的dp的話,你會怎麼做

41.imgview設定圖檔的話setBg和setImageResouse的差別是什麼

42.fragment的生命周期

43.從activityA跳轉到B的生命周期變化和又回到A的變化

44.怎麼解決記憶體溢出

Java

1.String 、StringBuffer、StringBuild差別?

2.HashMap和HashTable差別?源碼有沒有看過?

3.Vector,ArrayList和LinkedList差別?使用場景?

4.Http和https的差別?

5.談談你對JVM的了解?如果從

Person p=new Person()

這個執行個體的說說大緻的流程?

6.TCP和UDP的差別?使用場景?

7.抽象類和接口的差別?

8.談談你對内部類的了解?在什麼情況下你需要内部類?

9.final finally finalize差別?

10.volatile的了解?

11.什麼是線程安全?如何才能使線程安全?

12.Java 重寫(Override)與重載(Overload)差別?

總結

  • 答案後期會整理…
  • 題目持續更新…