转载

2019年Android实习面试汇总

实习拿了华为,爱奇艺,网易游戏的offer,最终去了华为南研所,Android客户端的面试知识点涉及到Android,Java,计算机网络,数据结构,操作系统,设计模式...

Android

  • 四大组件使用及原理,View原理,动画,常用开源库(OKHttp,Retrofit,RxJava,EventBus,Glide,Gson...),Handler,Fragment...

Java

  • Java基础知识,反射,泛型,集合源码,多线程原理,JVM...

计算机网络

  • HTTP/HTTPs/TCP/UDP/DNS/IP...

操作系统

  • 中断,用户态/内核态,阻塞,临界区,多线程模型...

数据结构

  • 二叉树,红黑树,B树,B+树,排序算法...

设计模式

  • 单例(手写),观察者,建造者,命令模式...

建议

  • 主要针对非科班同学:最好系统的看下操作系统和计算机组成原理,推荐 清华大学陈渝的操作系统公开课 ,因为看完操作系统后才能系统的认识计算机的原理,能更好的从底层去认识上层
  • 多看源码,包括Java层的代码在JVM中的实现源码(如synchronized的实现源码),Android Framework的源码(更好认识Android层的实现),Android开源库源码(OKHttp,Retrofit,RxJava,EventBus,Glide,Gson...,更好的学习优秀开源库源码,做到用的熟,懂原理)
  • 多问自己为什么,比如两个技术点优缺点分别在哪,各自的使用场景(如单例模式下饿汉与懒汉的优缺点,使用场景),这样才能更契合实际应用开发,针对不同场景使用不同技术点
  • 及时复盘总结面试中遇到的问题,分为两方面,一是知道但不能深入的,这种需要继续多看多总结,另一种是没接触过的,这种可以先了解下,万一面试又遇到了,可以回答下了解到的,之后再去深入总结(毕竟时间有限,不可能面面俱到,只能不断学习总结)
原文  https://juejin.im/post/5e7db915e51d4546c72dfacd
正文到此结束
Loading...