写点什么

Android 工程师跳槽经验分享,资深大牛带你了解源码

用户头像
极客开源
关注
发布于: 刚刚

java 方面

  • 基本知识点 集合类的区别和适用场景 1 次 java 静态内部类和非静态内部类的区别 内存分配 创建过程 内存泄漏问题? 如何保证线程安全??多次 (面试必问) 哪几种加锁方式(最好扯到 monitor) 乐观锁和悲观锁 (适用场景) 锁的适用场景 线程池的概念 构成 适用场景 为什么要用线程池(扯到线程分配资源的过程,和进程分配资源过程的区别)

  • 内核方面(面试必问) GC 垃圾回收机制?n 次 GC 是怎么找要清除的对象的? java 的四种引用和适用场景 GC 内核清理用什么算法? 新生代复制清理,老生代标记整理 拓展:老生代标记整理如何有效的整理内存碎片? java 内存结构? n 次 java 的内存是怎么分布的 java 类的加载机制 java 对象的加载机制 常量池 string 对象的生成 Integer 的缓存机制

计算机网络

  • 网络层级结构以及对应的协议

  • TCP TCP?三次握手(第一次和第三次如果没收到回应会怎样?) TCP 四次挥手 拥塞控制没考过?

  • HTTP HTTP 报文,http 各版本的区别,https

  • IP 为啥不将 mac 作为 ip 地址 ping 实现原理 ttl 生存字段

  • ARP 描述过程,广播单播

操作系统

  • 线程和进程区别(资源分配上是怎样的)

  • 进程通信

  • 内存空间分配

  • 死锁 产生死锁的条件(详细举例) 避免死锁的方法

设计模式

  • 一般是自己说了解哪些模式,一定要说明适用场景

  • 单例模式 懒汉式 饿汉式 线程安全,双重锁

  • 观察者模式

  • 适配器模式

  • 外观模式

android 方面(一般是根据项目问)

  • android 的进程通信

  • service 服务

  • handlerThread

  • handler 运行机制 1 次

  • recyclerView 缓存机制 1 次

  • view 的重绘

项目方面

  • fragment 和 activity 交互

  • webview 的使用 安全问题? 和 js 互相调用

  • 断点续传 描述过程 文件读写,怎么保证不冲突

  • asynctask 内存泄漏 为什么泄漏 解决方法 调试工具是什么

  • MFCC 流程 录音环节(快手问了一大堆细节,还让写伪代码)

  • MVP

  • recyclerView 和 listview 区别 缓存机制 item 太多会内存泄漏吗

最后

其实 Android 开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。


当然我也为你们整理好了百度、阿里、腾讯、字节跳动等等互联网超级大厂的历年面试真题集锦。这也是我这些年来养成的习惯,一定要学会把好的东西,归纳整理,然后系统的消化吸收,这样才能极大的提高学习效率和成长进阶。碎片、零散化的东西,我觉得最没有价值的。就好比你给我一张扑克牌,我只会觉得它是一张废纸,但如果你给我一副扑克牌,它便有了它的价值。这和我们收集资料就要收集那些系统化的,是一个道理。



网上学习 Android 的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。


本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录

用户头像

极客开源

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
Android工程师跳槽经验分享,资深大牛带你了解源码