Android 面试中被问到的一些问题

最近几个月一直在找工作,今年找工作是真的难。下面的是我这段时间找工作面试过程中被问到的一些问题,希望能对你有所帮助。

Java

基础

  1. 什么是面向对象?面向对象的三大特征是什么?
  2. String、StringBuilder、StringBuffer 的区别?String 为什么是不可变的?
  3. Java 中的 String 常量池相关的问题。
  4. Integer 缓存的相关问题。
  5. 什么是浅拷贝、什么是深拷贝,深拷贝有哪些实现方式。
  6. 二进制的运算必须要掌握。

进阶

JVM

  1. JVM 内存分区有哪些?
  2. 堆和栈的区别是什么?
  3. 垃圾回收器算法有哪些?
  4. Java 中如何判断一个对象是否需要被回收?
  5. Java 中的垃圾收集器有哪些?
  6. 一个 Object 在内存中占多少字节?
  7. 什么是 OutofMemoryError,什么情况下会发生 OOM。
  8. JVM 的类加载的双亲委派是什么?

集合

  1. ArrayList 和 LinkedList 有什么区别?
  2. ArrayList 扩容相关的问题。
  3. HashMap 的实现原理是什么?(这里可能会被问到数据结构与算法中解决 hash 冲突有哪些方式。)
  4. HashMap 扩容相关。(被问过 HashMap 的默认的负载因子是多少)HashMap 的容量为什么要是 2^n
  5. 为什么重新 equals 方法时要重写 hashCode 方法。

并发

  1. 保证线程安全的方式有哪些?
  2. synchronized 和 voliate 是什么?实现原理是什么?
  3. synchronized 和 ReentraintLook 的实现原理有什么不同?这两种锁有什么区别?
  4. 乐观锁和悲观锁是什么?
  5. CAS 是什么?Java 中 CAS 是如何解决 ABA 的问题的。
  6. 线程池是什么?线程池有什么优点?线程池的实现原理是什么?
  7. 你知道 JUC 下提供了哪些用于并发的工具类。
  8. AtomicInteger 的实现原理。
  9. ConcurrentHashMap 是如何保证线程安全的。
  10. Java 中有什么并发安全的集合?
  11. CountDownLatch、CyclicBarrier 和 Semaphore 必须要会使用,原理也不复杂,最好能掌握。
  12. 一些并发相关的手撕题。比如生产者、消费者;比如两个线程,必须一前一后执行。

Kotlin

  1. Kotlin internal 关键字的作用是什么?
  2. Kotlin 中内联函数的实现原理是什么?
  3. Kotlin 中扩展函数的实现原理是什么?
  4. Kotlin 中 lateinit 关键字的作用是什么?
  5. Kotlin 中协程是什么?实现原理是什么?(扩展到线程和进程)
  6. Kotlin 相比 Java 有什么优缺点。
  7. Kotlin 的委托机制。
  8. Kotlin 中的 Map 和 java 中的 Map 有什么区别?

Kotlin 面试时问的问题还是相对偏少。

操作系统

  1. 进程、线程、协程是什么?有什么区别?
  2. 什么是死锁?死锁有什么检测或者解决的办法吗?死锁的四个必要条件是什么?能写一段代码来演示一下死锁吗?
  3. 僵尸进程和孤儿进程是什么?
  4. 进程间通信的机制有哪些?

计算机网络

  1. 什么是 HTTP 协议?

    1. HTTP 协议常见的响应状态码有哪些?
    2. HTTP 各版本不同的版本之间有什么区别(或者说新加了哪些功能)?
  2. HTTPS 和 HTTP 有什么区别?HTTPS 中的 S 代表什么?

    1. HTTPS 握手的过程。
    2. 这里补充一个常见的加解密算法有哪些?
    3. 证书链,证书的验证过程。
  3. 抓包的原理是什么?Charles 抓包的原理是什么?

  4. 什么是 TCP 协议?TCP 协议是如何保证传输的可靠性的?

  5. TCP 和 UDP 的区别是什么?

  6. 什么是 DNS 协议?获取 DNS 的过程是什么?

设计模式

  1. 你用过哪些设计模式?
  2. 单例设计模式。什么是双重检测?双重检测的单例中为什么要使用 volatile。
  3. 观察者模式。
  4. 六大设计原则。
  5. 工厂模式。
  6. 代理模式。
  7. 适配器模式。
  8. 装饰模式。
  9. ...

Android

基础

  1. 能说说 Android 中的 Handler 机制吗?(最好能深入 native 层)

    1. Handler 中什么是同步屏障、什么是异步消息?
    2. IdleHandler 是什么?有什么作用?
    3. HandlerThread 是什么?
    4. Handler 中为什么要使用 epoll?
  2. Binder 是什么?AIDL 是什么?

  3. View 的绘制流程是什么?(最好能回答的全面一些)invalidate 和 requestLayout 的区别是什么?

  4. 自定义 View 流程有哪些?

  5. 能讲讲触摸事件的分发流程吗?(有可能会问 framework 层)这里可能会出一些场景,让你说一下事件是怎么分发的。

  6. Activity 的四种启动模式是什么?分别有哪些使用场景?

  7. Activity 的生命周期有哪些?屏幕旋转后的生命周期变化是什么?

  8. 能讲讲从 Launcher 启动 Activity 的流程吗?

  9. Broadcast 是什么?广播有哪些分类?广播注册方式有几种?为什么要有本地广播?本地广播的实现原理是什么?

  10. Service 是什么?Service 有哪几种模式?IntentService 是什么?

  11. ContentProvider 是什么?

  12. Android 创建线程有哪几种方式?多线程应用和单线程应用的 Application 有什么区别?

  13. MVC、MVP、MVVM、MVI 的区别是什么?

  14. ANR 是什么?ANR 的场景有哪些?在这些场景下多少秒无响应会 ANR?

  15. Android 中有哪几种动画,原理分别是什么?

  16. Activity 的 Context 和 Aplication 的 Context 有什么区别?

  17. App 的打包流程是什么?

  18. 什么是内存泄露?内存泄露的场景有哪些?内存泄露要怎么解决?怎么检测内测泄露?

  19. 组件化相关的一些问题,这个会结合项目问。

  20. Bitmap 加载一个图片,内存占用的大小和哪些因素有关?

Jetpack

  1. 你使用过哪些 Jetpack 的组件?
  2. Lifecycle 实现原理是什么?
  3. ViewModel 实现原理是什么?
  4. LiveData 的实现原理是什么?LiveData 中的版本号的作用是什么?LiveData 有什么不足以及如何解决?Google 为什么现在推荐使用 Flow?
  5. 为什么屏障方向切换后,ViewModel 中的数据还在?

框架

  1. Retrofit 的实现原理。
  2. OKHTTP 原理。
  3. Fresco 和 Glide 的优缺点。

设计题

  1. 启动任务的框架设计。
  2. 下拉刷新要怎么设计实现。
  3. ...

设计题千奇百怪,面试官可能会根据一些实际情况来出题。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,937评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,503评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,712评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,668评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,677评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,601评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,975评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,637评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,881评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,621评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,710评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,387评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,971评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,947评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,189评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,805评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,449评论 2 342

推荐阅读更多精彩内容