重学 Android 面试题

目录

android

Java

网络

Kotlin

项目经验

算法

设计模式

性能优化

Jetpack

高频问题


android

1,Activity生命周期

2,Activity启动模式及功能和使用场景

3,Android动画有哪些?之间有什么区别?

4,Android事件分发机制

5,View绘制流程

6,滑动冲突

7,AyscTask 异步消息处理

8,Handler

9,Handler防止内存泄漏的方法

10,自定义View

11,AIDL传递自定义对象

12,Android有几种进程,分别优先级是大小;

13,Sqlite升级,增删改查的SQL语句

14,LRUCache缓存机制及原理

15,Android 进程间通信有哪些?

16,Handler机制及执行原理,如何解决内存泄漏

17,Binder通信机制及原理

18,ARote路由原理是什么

19,自己写一个路由框架?

20,MVVM框架

21,WebView怎么防止内存泄漏

22,5.0到10.0适配及新增的功能

23,NDK 内存泄露问题

24,Android 实现异步有哪些

25,BroadcastReceiver 静态注册和动态注册的区别

26,怎么实现进程保活

27,Doze 省电模式

28,pandingintent和Intent 区别

答:a. Intent是立即使用的,而PendingIntent可以等到事件发生后触发,PendingIntent可以cancel

b. Intent在程序结束后即终止,而PendingIntent在程序结束后依然有效

c. PendingIntent自带Context,而Intent需要在某个Context内运行

d. Intent在原task中运行,PendingIntent在新的task中运行

29,marge ,include, viewstub区别

30,Service生命周期

31,Fragment生命周期

32,Fragment中的replace和hide方法的区别

33,ViewHodler是什么,是什么时候使用

Java

1,GC是什么

2,线程同步

3,JVM内存分为几部分

4,一支笔用面相对象的思想描述它

5,如何实现线程(thread)优雅(正常)的退出,不能使用stop和interrupt方法非正常退出

6,List Set Map 有何区别?各自实现类,并阐述实现类的区别

7,HashMap工作原理,为什么线程不安全

8,Java四大引用

9,软引用和弱引用之间的区别

10,超大数字符串相加

11,Java8的新特性

答:https://www.bilibili.com/video/BV14W411u7Ly

12,Java为什么没有协程

答:因为Java中已经有线程池的概念了

13,final有何作用

14,重载和重写

15,多态

16,如何判断URl是否包含baidu.com

17,String,StringBuffer,StringBuilder之间的区别

18,JVM相关

答:https://www.bilibili.com/video/av83622425?p=30

19,线程有几种状态?

20,什么是面向对象?

网络

1,TCP和UDP

2,http和https默认端口是多少

答:HTTP的默认端口号为80

HTTPS的默认端口号为443

3,MQTT

4,get和post请求有啥区别

5,TCP三次握手

6,https中的get和post请求的区别

Kotlin

1,协程是什么

2,Kotlin实现单例

3,kotlin中==和===的区别

项目经验

1,断电续传流程图

2,一个线程等待另外一个线程执行完在执行的解决办法?

答:thead join()方法可以实现如上场景;

3,进程保活

4,MD5算加密吗

5,用过的第三方库有哪些

6,MVC,MVP,MVVM之前的区别

7,Android进程常见保活方式有哪些?

8,模块化和组件化有啥区别

9,JNI怎么防止内存泄漏

算法

1,手写冒泡排序

设计模式

1,责任链设计模式熟悉吗

2,常用的设计模式有哪些

3,单例模式两中实现,及优缺点

4,构建者模式,并举例

5,工厂模式,并举例

6,三种工厂模式的区别

性能优化

1,引起内存泄漏有哪些

2,做过那些性能优化

Jetpack

Jetpack中用过哪些组件

高频问题

性能优化

内存泄漏

进程保活

猜你喜欢

转载自blog.csdn.net/ezconn/article/details/108183336