-
Tcp和Udp的区别?
-
Http的报文结构?cookie是用来干嘛的?有哪些响应码,分别都代表什么意思?
-
有自己实现过Socket协议吗?
多线程
-
Sleep()和wait()的区别?
-
Java有哪些线程池?他们的区别是什么?线程池工作流程是怎样的?线程池实现原理是怎样的?Cache线程池有哪些弊端?
-
多线程间的通信方式?
-
synchronize关键字怎么用的?还知道哪些同步的方式?
-
Thread直接调用run方法会怎么样?start方法作用是什么?
-
volatile关键字的作用是什么?
-
怎么安全停止一个线程任务?原理是什么?线程池里有类似机制吗?
数据结构
- HashMap和HashTable的区别?和 ConcurrentHashMap 区别?和LinkedHashMap区别?内部实现原理?
LRUCache的原理?
-
ArrayList和LinkedList区别?为什么ArrayList不是线程安全的?
-
数据库的索引用的什么数据结构?
虚拟机
-
垃圾回收机制?有哪些对象可以作为GC roots?
-
跟Art、Dalvik对比
-
Java内存模型?
-
类加载机制?双亲委托模型?
其它
- 用过哪些设计模式?DCL单例模式为什么要两次判空?Android里源码或者你用过的开源库都用到了什么设计模式?
— final关键字的作用?
-
静态内部类和内部类的区别?
-
值传递类问题
-
Kotlin为什么能和Jav