基础知识
Java基础:
1.ArrayList、Linkedlist、Vector
2.BlockingQueue、CountDownLatch
3.Collections、Arrays
4.Exception与Error包结构,OOM,SOF的各种情况
5.HashCode作用
6.Java1.7、1.8新特性
7.Java NIO
8.Java基本数据类型以及相关操作
9.Java的四种引用,强弱软虚,用到的场景
10.Map、Set、List、Queue、Stack的特点与用法
11.Map相关子类区别
12.Object共有方法以及wait和sleep区别
13.Override与Overload区别
14.String相关内容学习
15.foreach与for循环效率对比
16.interface与abstract类的区别
17.static关键字
18.synchronized、lock、reentrantLock区别
19.不同清醒下return与finally的执行顺序
20.transient、volatile
21.反射原理及应用
22.反省特点以及类型转换
23.生产者消费者问题的五中实现
24.县城以及ThreadLocal
25.线程池的使用
26.解析XML的DOM与SAX以及PULL区别
27.锁的等级:方法锁、对象锁、类锁
28.面向对象的特征和含义以及多态实现原理
Android:
1.在AS中定义Gradle插件
2.Activity与Fragment生命周期
3.Activity卡顿原因
4.Activity启动过程
5.Activity四种启动模式与IntentFilter匹配规则
6.Activity的状态保存
7.Android5.0、6.0、7.0、8.0、9.0、10.0特性
8.Android内存优化方法
9.Android动画
10.Android文件缓存方法
11.Android长连接,怎么处理心跳机制
12.Asset与raw,res、drawable
13.AsyncTask原理与使用
14.Bitmap相关
15.ContentProvide用法
16.IntentService
17.Json相比XML优劣势,protobuf
18.Looper、Handler、MessageQueue
19.Merge与ViewStub布局标签
20.OkHttp原理解析
21.Service相关
22.Sqlite基本操作
23.UIL原理解析
24.Volley原理解析
25.Zygote进程启动过程
26.启动Activity的集中方式
27.如何保证Service不被kill
28.如何加速启动Activity
29.怎样退出终止App
30.插件化原理
31.注册广播的两种方式
32.热补丁技术概括
33.自定义View(所有View知识)
34.通过自定义Gradle插件修改编译后的class文件
数据结构
1.各种排序算法复杂度对比
2.排序算法
3.数据结构基本概念及复杂度分析
操作系统
1.IPC集中通信方式
2.什么是虚拟内存
3.死锁的必要条件,怎么处理死锁
4.段储存、页储存、段页储存
5.虚拟地址、逻辑地址、线性地址、物理地址的区别
6.进程与县城
7.银行家算法
计算机网络
1.3次握手和4次挥手过程
2.HTTP响应报文格式及各种响应吗
3.HTTP请求报文格式
4.Http1.1和Http1.0区别
5.Http怎么处理长连接
6.IP地址分类
7.OSI与TCP\IP各层的结构与功能
8.Ping的整个过程。ICMP报文是什么
9.TCP与UDP区别以及各自优缺点
10.TCP和UDP数据报文格式
11.TCP拥塞控制和流量控制
12.http与https区别
13.打开一个网页,整个过程使用到哪些协议
14.滑动窗口与回退N针协议
15.路由器与交换机区别
数据库
1.关系数据库基本概念
2.关系模式的规范化
3.函数依赖与候选码的定义
4.数据库中数据查询
5.数据库查询优化
6.数据的添加、删除、修改
7.表的创建、修改表结构、删除表
JVM
1.CAS是什么
2.GC收集器有哪些
3.GC的三种收集方法
4.内存模型以及分区
5.判断一个对象是否存活
6.双亲委派模型
7.对象的创建、内存布局、对象的访问定义
8.新生代老年代内存划分比例以及其各自特点
9.类加载的五个过程
10.静态分派和动态分派
书
《Android开发艺术探索》、《深入理解java虚拟机》、《Android源码设计模式解析与实战》、《数据结构》、《Java编程思想》、《操作系统》、《计算机网络》