在面试中需要注意哪些问题你知道吗内含Android面试题
目录
在面试中需要注意哪些问题你知道吗?(内含Android面试题)
- 泛型中 extends 和 super 的区别
- 父类的静态方法能否被子类重写?静态属性和静态方法是否可以被继承?
- 进程和线程的区别
- final,finally,finalize 的区别
- 序列化 Serializable 和 Parcelable 的区别
- 谈谈对 kotlin 的理解
- string 转换成 integer 的方式及原理
Android 高级面试题
- 说下你所知道的设计模式与使用场景
- java 语言的特点与 OOP 思想
- 说下 java 中的线程创建方式,线程池的工作原理。
- 说下 handler 原理
- 内存泄漏的场景和解决办法
- 如何避免 OOM?
- 说下 Activity 的启动模式,生命周期,两个 Activity 跳转的生命 周期,如果一个 Activity 跳转另一个 Activity 再按下 Home 键在回到 Activity 的生命周期是什么样的?
- onRestart 的调用场景
- 是否了 SurfaceView,它是什么?他的继承方式是什么?他与 View 的区别(从源码角度,如加载,绘制等)。
- 如何实现进程保活?
- 说下冷启动与热启动是什么,区别,如何优化,使用场景等。
- 为什么冷启动会有白屏黑屏问题?
- Android 中的线程有那些,原理与各自特点
- ANR 的原因
- 三级缓存原理
- LruCache 底层实现原理
- 说下你对 Collection 这个类的理解
- JVM 老年代和新生代的比例
- jvm,jre 以及 jdk 三者之间的关系?
- 谈谈你对 JNIEnv 和 JavaVM 理解?
- Serializable 与 Parcable 的区别?
Android 多线程总结
- 什么是线程
- 线程的状态
- 线程的创建
- 线程中断
- Thread 为什么不能用 stop 方法停止线程
- 重入锁与条件对象,同步方法和同步代码块
- volatile 关键字
- java 内存模型
- 原子性 可见性 有序性
- 线程池 ThreadPoolExecutor
- 线程池的种类
- 线程同步机制与原理,举例说明
- arrayList 与 linkedList 的读写时间复杂度
- 为什么 HashMap 线程不安全(hash 碰撞与扩容导致)
- 进程线程的区别
Android面试突破题
- 数据库的操作类型有哪些,如何导入外部数据库?
- 是否使用过本地广播,和全局广播有什么差别?
- 是否使用过 IntentService,作用是什么, AIDL 解决了什么问
- Activity、 Window、 View 三者的差别, fragment 的特点?
- 描述一次网络请求的流程(新浪)
- Handler、 Thread 和 HandlerThread 的差别(小米)
- 低版本 SDK 实现高版本 api(小米)
- launch mode 应用场景(百度、小米、乐视)
- touch 事件传递流程(小米)
- view 绘制流程(百度)
- 什么情况导致内存泄漏(美团)
- ANR 定位和修正
- 什么情况导致 oom(乐视、美团)
- Android Service 与 Activity 之间通信的几种方式
- Android 各个版本 API 的区别
- 如何保证一个后台服务不被杀死,比较省电的方式是什么?(百度)
- Requestlayout, onlayout, onDraw, DrawChild 区别与 联系(猎豹)
- invalidate()和 postInvalidate() 的区别及使用(百度)
- Android 动画框架实现原理(腾讯)
- Android 为每个应用程序分配的内存大小是多少?(美团)
- LinearLayout 对比 RelativeLayout(百度)
- 优化自定义 view(百度、乐视、小米)
- ContentProvider(乐视)
总结
在面试工作中还要许多的小细节需要我们去注意,上面这些面试题目是我在之前网上收集整理的一小部分,由于文档的篇幅长度限制。就在下面用图片展现给大家看了,如果有需要这些面试题参考(内含参考答案),可以私信我【666】或者直接点击【** GitHub **地址】查看免费领取方式!希望能对大家有所帮助。
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助 。
因此我收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
深开发者,这些资料都将为你打开新的学习之门**
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!