最新Android面试题集锦

时间:2022-10-04 17:49:24

最近因为某些原因想换工作,整理一下个人觉得面试中还比较值得记录的一些题目,给需要找这方面工作的人一个借鉴。

以下基本只记录题目或者大概答案,如果大家有比较详细的解答或者比较好的面试题木,希望各位看到的能补充在评论里,供后来人参考,谢谢。

Java部分:

1. 线程有哪几种实现方式

    Thread、Runable比较简单,主要考点在关于线程池,因为我对线程池使用不多没有深入问。

2. sychronised关键字

    考察重点在于理解sychronized针对的是对象而非语句或者方法

3. hashcode和equals方法

    考察hashcode方法的作用是什么,equals和hashcode之间的关系

4. hashmap和treemap

    考hashmap的使用,hash基础知识,hashmap简单的实现原理(数组加链表),treemap是已排序二叉树

5. Java的lock机制

    ReentrantLock的理解,因为了解不多没有再追问,比如他的简单原理,与sychronized的优劣势

6. 设计模式

    说出几种你用过的设计模式,他们的使用场景

7. 详细描述一下GC及简单工作原理

    考察GC回收时机、GC判断是否需要回收的机制

8. final、finally、finalize

    老生常谈了,多注意一下最后finalize不是特别常用


Android部分:

1. Android动画有哪几种,详细解释

    property animation, view animation, drawable animation。具体比较想考察property animation

2. Activity Visible Lifetime 和 Foreground Lifetime

    考察visible指的是onStart->onStop, foreground指的是onResume->onPause

3. AndroidManifest.xml文件中minSdkVersion、maxSdkVersion和targetSdkVersion

    min、max表示sdk版本必须限定在此范围内,而target指的是Android据此决定是否运行在兼容模式下

4. Fragment

     考察fragment的使用,与activity的联系

5. Android的弱引用指针和强引用指针

     考了基本概念

6. Android Touch流程

     主要考察dispatchTouchEvent、onTouchEvent、onInterceptTouchEvent

7. IntentService和AIDL

    intentservice和普通service的区别,进程间通信

8. layout布局考察

     linearlayout layout_weight的意思,framelayout中aligntop和alignparenttop的区别

9. View的绘制过程

    考察onMeasure(特别是setMeasuredDimension)、onLayout、onDraw方法

10. ListView或者ViewPage中的Adapter

11. Looper、Handler、Message