小米Android开发工程师实习(一、二、三面)

2022年已经悄然来到8月份,也将马上步入9月份了,到了秋招的时候,对于Android开发者们,也是听到、看到了很多不太利好的消息,像“90后姑娘失业后每天假装上班”也冲上热搜令人难以感叹,这也着实让大家对自己的前途感到迷茫。

其实近些年来,很多人都在不断地唱衰Android的发展趋势,虽然Android热度不如从前,随着行业的发展,各大厂对于从业者的要求也越来越严格,但其实那些基础知识扎实、开发技能过硬的开发者依旧是各大厂争相抢夺的香饽饽,很多大厂对于中高级Android开发者仍旧求贤若渴。

一面

(约为50min左右)

  • 自我介绍(要对自己的简历要熟悉,不要因为简历而让面试官对自己的印象不好)
  • 介绍一下线程池的几个参数。
  • 知道哪些Java中的容器,HashMap和HashTable的区别,是否线程安全。
  • 知道哪些排序算法,冒泡和归并的时间复杂度。
  • Activity的启动周期,Activity之间切换和按home键时的生命周期变化。
  • 介绍一下自己的项目。(疯狂拉扯,根据面试官的各种问题进行一一解答与分析)

二面

(将近一个半小时)

  • 平时怎么学习Android的?
  • 有没有关注最新版本Android的新特性。
  • 抽象类和接口的区别,说自己的理解。
  • 数组和链表的区别。
  • 了解什么设计模式,手写一个自己常用的单例模式。
  • HashMap、HashTable和ConCurrentHashMap的区别。
  • HashMap的原理,ConCurrentHashMap中的锁是怎样的。
  • ArrayList 与 LinkedList 区别,是否线程安全。
  • int 和 Integer 用==来比较的不同情况。
  • sychronized的使用方法,修饰代码块时多个进程执行的情况。
  • Android不同启动模式并举例使用场景。
  • Android中如何使用多线程,怎么关闭线程。
  • 如何完成线程A完成后同时线程B开始,线程B完成之后线程C开始。如何完成线程A和线程B都完成后,再通知线程C开始。
  • 假如需要关闭Activity,保证下载线程继续执行。
  • Service的开启方式,两种开启方法的区别。
  • 如果Service使用startService()启动,如何再进行Activity和Service之间的通讯。
  • 说一下IntentService的原理。
  • 广播的两种类型,为什么本地广播只能在本进程中接收到。
  • 自定义view的绘制过程,每个过程的具体作用。
  • 自定义view中onMeasure()和onLayout()在viewgroup和子view的调用顺序。
  • 自定义view中onMeasure中的MeasureSpec有哪些。
  • 知道动态权限吗?
  • 平常使用模式开发(MVC、MVP、MVVM),为什么。
  • 介绍自己两个项目。
  • 算法:判断链表中是否有环。

三面

(50min左右)

  • 询问个人情况和实习时间。
  • 分别解释Java 面向对象的三个特性——封装、继承、多态
  • 重写和重载的区别
  • 访问控制符的种类和异同
  • final的使用方法及不同修饰情况下的区别
  • static的使用方法
  • finally的使用方法,try里return了finaly的代码块还会不会继续执行
  • 死锁的产生条件和解决方法
  • 线程池的原理和种类
  • 多线程中sleep()和wait()的区别
  • 介绍自己的两个项目
  • 算法:输入一个十进制数a和2~32的整数n,将a转化为n进制数,以字符串输出。

公众号:Android Jasper 专注分享面试题|面试技巧|Android学习资料。(dd:16)

#小米##Android开发实习##面试##小米实习#
全部评论
只是实习面试吗,就三面了?
点赞
送花
回复
分享
发布于 2022-08-20 19:28 湖北
卧槽,实习就三面啊
点赞
送花
回复
分享
发布于 2022-09-01 23:01 湖北
秋招专场
校招火热招聘中
官网直投

相关推荐

头像
04-02 20:00
点赞 评论 收藏
转发
1 20 评论
分享
牛客网
牛客企业服务