Android常用面试题

1、如何理解Java的多态?其中,重载和重写有什么区别?

2、谈一下JVM内存区域划分?哪部分是线程公有的,哪部分是私有的?

3、final关键字的用法?

4、死锁是怎么导致的?如何定位死锁

5、数据库如何进行升级?SQLite增删改查的基础sql语句?

1、Broadcast的分类?有序,无序?粘性,非粘性?本地广播?

2、Android中的事件传递机制?

3、Handler的原理?

4、ANR出现的情况有几种? 怎么分析解决ANR问题?

5、内存泄露的场景有哪些?内存泄漏分析工具使用方法?

6、如何实现启动优化,有什么工具可以使用?

7、常用的设计模式有哪些?是否了解责任链模式?

mmap + native 日志优化?

讲讲 Android 开机启动的流程

系统是怎么帮我们启动找到桌面应用的

讲讲动态状态页的加载,为什么要这么弄?

讲讲页面的刷新机制,GPU 调试工具几个颜色值分别代表什么?

说说 ConcurrentHashMap 的实现原理说下

你知道 okhttp 是怎么复用连接的吗?

数组和链表的区别说下

快排和递归

讲一讲动态注册和静态注册

so 的加载流程是怎样的,生命周期是怎样的

native 层怎么检测内存泄漏

leakcanary 的原理,哪些对象可以用来做 gc-root

ui 怎么优化的?

线程耗时卡顿怎么监听的?

说说你看的 Tinker 的原理?

如何实现socket通讯?

Rxjava的原理 Thread直接调用run会怎样?

activity启动模式

Launcher启动流程,fragment的生命周期

contentprovider安全机制

ANR出现的原因,service忙导致超时无响应的时候,应该怎么解决?

handler原理 AsyncTask原理,AsyncTask什么时候是在⼯作线程 Android SDK包括哪些部分?是如何进行开发的?

view绘制流程 webview缓存机制 如何避免WebView内存泄露?会用哪些检测工具? 过度渲染问题,怎么解决?

热修复原理,so 和资源动态加载 BroadCastReceiver有⼏种类型?⼴播的两种注册⽅法?

Intent可以传递哪些数据类型 okhttp拦截器的种类

TCP为什么不能两次握手 堆排序的原理是什么?

heap和stack有什么区别 快排算法的分析思路

总结(如何实现质的飞跃?)

相关推荐
guoruijun_2012_44 小时前
fastadmin多个表crud连表操作步骤
android·java·开发语言
Winston Wood4 小时前
一文了解Android中的AudioFlinger
android·音频
B.-5 小时前
Flutter 应用在真机上调试的流程
android·flutter·ios·xcode·android-studio
有趣的杰克5 小时前
Flutter【04】高性能表单架构设计
android·flutter·dart
大耳猫11 小时前
主动测量View的宽高
android·ui
帅次13 小时前
Android CoordinatorLayout:打造高效交互界面的利器
android·gradle·android studio·rxjava·android jetpack·androidx·appcompat
枯骨成佛14 小时前
Android中Crash Debug技巧
android
kim565919 小时前
android studio 更改gradle版本方法(备忘)
android·ide·gradle·android studio
咸芝麻鱼19 小时前
Android Studio | 最新版本配置要求高,JDK运行环境不适配,导致无法启动App
android·ide·android studio
无所谓จุ๊บ19 小时前
Android Studio使用c++编写
android·c++