Android高级面经[详解]
绝对干货,每一篇都是Yim精心制作,相比晦涩难懂的技术文档,以下文章都是Yim用简单易懂的方式为大家阐述,因为小一觉得一篇读不懂的blog是在浪费大家的时间,写blog主要目的是为了让大家都能够理解,能够为大家在工作中带来一些启发,而不是一味的写一些看似高x格的blog来彰显自己的技术有多牛x。
未完待续。。。大家也可以通过评论将一些大家遇到的问题向我提问。
Java基础(JVM)
- String、StringBuffer、StringBuilder 的区别?String为什么是不可变的?
- Vector、ArrayList、LinkedList的原理和区别?
- HashTable、HashMap、TreeMap原理和区别?
- 常见编码方式?utf-8编码中的中文占几个字节?int型几个字节?
- JVM(Java虚拟机)
- ThreadLocal 原理
- synchronize和volatile (Java并发编程:volatile关键字解析)
- 线程及线程池
数据结构/算法
- 栈 Stack
- 队列 Queue
- 链表 Linked List
- 数组 Array
- 哈希表 Hash Table
- 二叉树 Binary Tree
- 堆 Heap
- 并查集 Union Find
- 字典树 Trie
- 二分搜索 Binary Search
- 分治 Divide Conquer
- 宽度优先搜索 Breadth First Search
- 深度优先搜索 Depth First Search
- 回溯法 Backtracking
- 双指针 Two Pointers
- 动态规划 Dynamic Programming
- 扫描线 Scan-line algorithm
- 快排 Quick Sort
计算机网络
- 简述TCP/IP体系?
- TCP与UDP区别与应用?
- GET,POST区别(计算机底层实现的区别)?
- Https 理论基础及Https在Android中的应用(HTTPS 理论基础及其在 Android 中的最佳实践 , 浅谈https\ssl\数字证书)
操作系统基础—-视频—–试题
linux系统—-视频—–试题
Gityuan
Android基础
系统相关
- Android系统启动流程 ?
- Jvm、Art 和 Dalvik对比?
- 点击 Android Studio 的 build 按钮后发生了什么?
- Android应用安装到手机上时发生了什么?
- Android应用启动流程?
- Android进程和 Application 的生命周期及保活方案?
- Android的 Inter-Process-Communication (IPC)跨进程通信?
- Binder 机制?
- Handler 机制?
- Activity、Service、Fragment的生命周期和启动模式?
- SP是进程同步的吗?有什么方法做到同步;
- SpareArray原理?
- App启动流程
- 应用程序安装到手机上时发生了什么?
- 点击 android Studio 的 build 按钮后发生了什么?
- Activty的加载过程?
- Android系统启动流程 ?
- Art和Dalvik对比
- Android的 Inter-Process-Communication (IPC)跨进程通信;
- App是如何沙箱化,为什么要这么做;
- 权限管理系统(底层的权限是如何进行管理 的);
- 进程和Application 的生命周期;
- 进程保活
架构相关
- 组件化
- 插件化
- 热修复
- 换肤原理
View相关
- View工作原理?
- View的事件体系?
- SurfaceView和TextureView的区别?
- SurfaceView和TextureView的区别
- View绘制机制和加载过程
- Android事件分发机制,
- Recycleview/ Listview的区别,性能
- BroadcastReceiver,LocalBroadcastReceiver 区别
- Service、Fragment、Activity生命周期
- Bundle 机制
- Handler 机制
- HashMap源码,SpareArray原理
- SP是进程同步的吗?有什么方法做到同步;
图片加载相关
- Bitmap的加载原理?
- Android中的缓存策略?
- LruCache 底层原理?
- 图片三级缓存
- 图片加载原理;
- Bitmap的处理;
优化相关
- 内存回收机制与GC算法(各种算法的优缺点以及应用场景);
- 内存泄露场景及避免和解决方法
- Android性能优化
- Android网络优化
- GC原理时机以及GC对象;
网络相关
- TCP与UDP区别与应用;
- Https在Android中的应用;
开源库
- Glide源码解析
- Okhttp源码解析
Android源码—-罗升阳(学习源码思想)
Gityuan
六大原则和设计模式—android中的设计模式
- 单一职责原则
- 开闭原则
- 里氏替换原则
- 依赖倒置原则
- 接口隔离原则
- 迪米特原则
- 单例模式
- Builder模式
- 原型模式
- 工厂方法模式
- 抽象工厂模式
- 策略模式
- 状态模式
- 责任链模式
- 解释器模式
- 命令模式
- 观察者模式
- 备忘录模式
- 迭代器模式
- 模板方法模式
- 访问者模式
- 中介者模式
- 代理模式
- 组合模式
- 适配器模式
- 装饰漆器模式
- 享元模式
- 外观模式
- 桥接模式
- MVC、MVP、MVVM 模式