阵子,有很多的朋友在我的知乎下方留言说马上就要过年,过完年就是“金三银四”了,我想在这个期间好好复习一波,你有什么好的复习建议和复习计划吗?
思来想去,如果我提出有针对性的建议能对他们的复习有所帮助,但是,我并不了解知乎内这些朋友的情况,不知道这些朋友的技术薄弱区在哪?就无法给出相应的复习方法。在几经考虑之后,我决定整理一份 Android 中高级面试笔记。这里面有Android中高级工程师在面试时会碰到的技术考察点,整份PDF一共有836页,涵盖了Java、Android基础、Android进阶、算法、数据结构等一系列的核心知识点。
一、Java基础
- JVM
- Object
- static
- final
- String、StringBuffer、StringBuilder
- 异常处理
- 内部类
- 多态
- 抽象和接口
- 集合框架
- 反射
- 单例
- 线程
- volatile
- synchronized
- Lock
- 引用类型
- 动态代理
- 元注解
二、Android基础
- Activity
- Fragment
- Service
- BroadcastReceiver
- ContentProvider
- 数据存储
- View
- 进程
- Parcelable 接口
- IPCWindow / WindowManager
- Bitmap
- 屏幕适配
- ContextSharedPreferences
- 消息机制
- 线程异步
- RecyclerView 优化
- Webview
三、Android进阶知识点汇总
- ART
- Hook
- Proguard
- 架构
- Jetpack
- NDK 开发
- 类加载器
需要这份Android中高级面试资料的朋友 可以在文章下方获取
四、性能优化知识点汇总
- 启动优化
- 存储优化
- 网络优化
- 耗电优化
- 多线程并发优化
- 安装包优化
五、Android开源库源码分析
- OKHttp
- Retrofit
- Glide
- GreenDao
- RxJava
- LeakCanary
- ButterKnife
- Dagger 2
- EventBus
六、Kotlin知识点汇总
- 对象
- 类
- 继承
- 变量
- 常量
- 静态常量
- 定义方法
- 重载方法
- 基本数据类型
- 比较类型
- 转换符
- 字符串比较
- 数组
- 循环
- 角标循环
- 高级循环
- 判断器
- 构造函数
- 类创建
- 私有化 set 方法
- 私有化 get 方法
- 枚举
- 接口
- 匿名内部类
- 内部类
- 内部类访问外部类同名变量
- 抽象类
- 静态变量和方法
- 可变参数
- 泛型
- 构造代码块
- 静态代码块
- 方法代码块
- 可见修饰符
- 无需 findViewById
- Lambda
- 函数变量
- 空安全
- 方法支持添加默认参数
- 类方法扩展
- 运算符重载
- 扩展函数
- 协程
七、设计模式汇总
- 设计模式分类
- 面向对象六大原则
- 工厂模式
- 单例模式
- 建造者模式
- 原型模式
- 适配器模式
- 观察者模式
- 代理模式
- 责任链模式
- 策略模式
- 备忘录模式
八、计算机网络基础
- 网络体系的分层结构
- HTTP 相关
- TCP/IP
- Socket
九、C++知识点汇总
- 头文件
- 数据类型
- typedef
- 类型限定符
- 定义常量
- 存储类
- 引用 vs 指针
- struct vs class
- 成员函数
- 析构函数
- 拷贝构造函数
- friend 友元
- inline 内联函数
- 继承类型
- 运算符重载
- 动态内存
- 命名空间
- 预处理器
- 信号
- 线程
- 强制类型转换
- 智能指针
- 内存空间
十、常见面试算法题汇总
- 排序
- 二叉树
- 链表
- 栈 / 队列
- 二分
- 哈希表
- 堆 / 优先队列
- 二叉搜索树
- 数组 / 双指针
- 贪心
- 字符串处理
- 动态规划
- 矩阵
- 二进制 / 位运算
- 其他
总结
其实整个面试过程是一个不断认清自己的过程,所以自我心态是最重要的,我们要把面试当成一个学习和成长的过程,大部分人能得到的结果是和我们过去的努力程度直接挂钩的,所以永远不要抱怨什么,我们今天的现状往消极了说是在为过去的选择买单,往积极了说还要感谢那个曾经努力过的骚年。
PS:如有需要这份《Android中高级面试笔记》的朋友 “扫描下方二维码即可免费打包获取”