Android客户端-寒假实习面经-实习初体验

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38499859/article/details/84843407

Android客户端-寒假实习面经-实习初体验

一.絮絮叨叨的一些话

好久没有写博客了,前段时间一直在忙实习的事,耽搁了一阵子,现在忙的差不多了,所以打算在实习期间抽些,继续写写博客,为明年的春招和秋招做好知识储备。加深技能栈,在这之前,现回顾一下我大概两周的面试和实习经历。

在大三刚开学的时候,实验室的大四的学长们在催促者我们,让我们开始制作简历,由于项目不足,所以一直在拖,最后在大约10月底,简历制作完毕。简历制作完毕后,大四的学长就对我们进行了模拟面试,大致了解了一下面试中的一些技巧和常考问题。

之后在百度和头条的学长们说,他们所在的部门招实习生,让我们去试试,我们就试着投了投简历以及面试。后来又在实习僧上投了几家公司的简历。所以最后面试了百度,头条,小米三家公司,最后去了百度实习。下面是我的面试准备和面经。

二.面试准备

1.Android方面

我的技能栈:

  • MVP&MVC
  • OKhttp源码
  • Retrofit源码
  • Service的两种状态&通信&生命周期
  • Activity的生命周期&启动模式
  • View的事件分发&滑动冲突
  • View的绘制流程&自定义View
  • Rxjava优点&源码&应用
  • 广播
  • 内容提供器
  • Handler机制&源码
  • Fragment生命周期
  • Lru缓存算法(LruCache&DiskLruCache)
  • 进程间通信[Binder源码]

2.java

  • Java内存布局
  • GC机制
  • 集合框架

3.操作系统

  • 进程线程
  • 同步
  • 死锁
  • IPC

4.计算机网络

  • 三握四挥
  • http &hhtps
  • TCP
  • UDP
  • 计算机分层结构
  • ip层路由协议
  • mac层的生成树协议

5.数据结构

  • 常见的数据结构与算法

三.面经

1. 11.16日百度面经

百度面试的感觉还是很棒的,一面二面的面试官也都问的时候都还不错,第一次面试,刚开始有些紧张,后面进入自我介绍环节后,好多了。一面在问算法的时候卡住了,没碰到这类的算法。有点懵,后期会多刷一些算法。

一面问题;

  • 项目
  • View事件分发+ 滑动冲突
  • View的绘制流程
  • Activity的生命周期
  • MVC MVP
  • 线程安全
  • 弱引用,软引用
  • Rxjava(使用,好处)
  • 内存泄漏
  • hashmap的实现,解决哈希冲突的方法
  • ArrayList和LinkedList的区别
  • ListView和RecycleView的区别
  • 算法: 一堆数,有一个数出现奇数次,其余的数都出现偶数次。找出这个数

二面问题

  • 自我介绍
  • 讲实验室
  • 大学中印象最深的事
  • 评价自己的性格
  • 等等

2.11.19日 头条多媒体部门

面的事头条的多媒体部门,基本是被按在地上摩擦。开始的时候,hr没有发视频连接。然后联系hr之后,之后开始耳机又有问题,所以心态有点炸。最后也不出所料的挂了,emmmmmm。

面试问题:

  • Activity的生命周期
  • Service的生命周期
  • Fragment的生命周期
  • Handler内部实现机制
  • 如果是你,你怎么实现Handler
  • 四大组件
  • OOM
  • listView在什么情况会发生OOM
  • surfaceView
  • Binder(手写AIDL)
  • 绘制流程
  • view事件分发
  • GC
  • 手写字符转数字

3.11.20.小米

小米面的也还比较愉快,问的也基本都是Android相关的。面试官人也很好,一面过了,不过之后已经决定来百度了,所以也就没有继续面下去,结束了面试。

  • 那个项目比较满意
  • Rxjava优点,应用
  • Retrofit
  • RecyclerView不同子项
  • 事件分发
  • MVP 和MVC的区别
  • 四大组件的使用场景
  • Service两种状态,两种使用场景,组件间通信
  • 如何实现不同机型的适配
  • 持久化存储
  • 不同Fragment之间传递数据
  • 算法:N个数找第m大个数。
  • 哈希算法

4.11. 22 头条SDK部门

另一个学长知道我头条多媒体部门挂了之后,捞了我一把,把我捞到他们部门继续面试,但还是最终止步于二面,emmmmmm,菜是原罪,明年春招的时候,还要在试一次头条部门,不信了。。。

一面

  • 抛硬币(两个人抛硬币,谁先抛到正面,谁胜,反面给另一个人,求先抛的人胜的概率)
  • 快排(思想,找中枢(优化,三数取中),时间复杂度)
  • 队,栈区别,生活中的例子
  • 组件化的使用
  • 组件化通信
  • 编译时注解 运行时注解(没答上来)
  • 进程线程区别
  • ARoute
  • 多进程读取SharedPreferences
  • 进程间通信
  • http和https的区别
  • 算法:判断一个字符串是否为ipv4地址

二面

  • 实验室 项目
  • sp存在哪
  • sp提供了那些接口[不知道]
  • 数据库(15的按照学号逆序)[没写出来]
  • tcp三卧四挥
  • get和post的区别[没说全]
  • 断点续传的实现[没答上来]
  • 链表(创建,删除,添加,逆序)

5.总结

总得来说,面试那一周也是学习了不少东西,也知道了自己在哪方面还有欠缺。总得来说收获还是蛮大的。

四.实习初体验

总得来说,感觉还是很不错的,百度对实习生也是有很好的制度,培养方案,也算是正式接触了程序员真正的工作状态,日常需求等等。也在慢慢适应。

前路漫漫,继续前行~

猜你喜欢

转载自blog.csdn.net/qq_38499859/article/details/84843407