1 .什么情况下发生栈内存溢出? 栈帧(?)深度超过内存
2. JVM 内存模型?JVM内存结构?
3. JVM中一次完整的GC是什么样的,对象如何晋升到老年代
4. JAVA中垃圾回收算法
5. 判断对象存活? 引用计数法,可达性分析 GCroot根对象?
6. 垃圾回收器?优缺点、cms g1
7. 为什么使用双亲委派模型
避免多份同样的字节码加载,内存没必要保存多份相同的class对象。
- 类的加载方式
隐式加载:new
显示加载:class.forName(), loadClass
- 如何获取线程的返回值
主线程等待法?使用thread的join方法,阻塞当前方法,直到子线程结束,通过callable接口实现,或者通过Future task,线程池获取。future.isDone() future.get()
- 给run函数传参数
构造函数,成员变量,回调函数传参