多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## JVM方面 ### java内存模型,五个部分,程序计数器、栈、本地栈、堆、方法区。 ### 每个部分的概念、特点、作用。 ### 类加载的过程,加载、验证、准备、解析、初始化。每个部分详细描述。 ### 加载阶段读入.class文件,class文件时二进制吗,为什么需要使用二进制的方式? ### 验证过程是防止什么问题?验证过程是怎样的?加载和验证的执行顺序?符号引用的含义? ### 准备过程的静态成员变量分配空间和设置初始值问题。 ### 解析过程符号引用替代为直接引用细节相关。 ### 初始化过程jvm的显式初始化相关。 ### 类卸载的过程及触发条件。 ### 三种类加载器,如何自定义一个类加载器? ### 双亲委派机制。 ### JVM内存分配策略,优先放于eden区、动态对象年龄判断、分配担保策略等。 ### JVM垃圾回收策略,怎样判对象、类需要被回收? ### 四种垃圾回收算法标记-清除、复制、标记-整理、分代收集。 ### JVM中的垃圾回收器,新生代回收器、老年代回收器、stop-the-world概念及解决方法。 ### 四类引用及使用场景? ## 集合类 ### hashmap实现的数据结构,数组、桶等。 ### hashmap的哈希冲突解决方法:拉链法等。拉链法的优缺点。 ### hashmap的参数及影响性能的关键参数:加载因子和初始容量。 ### Resize操作的过程。 ### hashmap容量为2次幂的原因。 ### hashtable线程安全、synchronized加锁。 ### hashtable和hashmap异同。 ### 为什么hashtable被弃用? 果断将话题扯到concurrenthashmap,讲了concurrenthashmap相比于hashtable做的优化、segment的概念、concurrenthashmap高效的原因。中间面试官问的问题: ### 容器类中fastfail的概念。 ### concurrenthashmap的插入操作是直接操作数组中的链表吗? ### 集合类相关over,由于都是自己主动在说,把握了主动权,相谈甚欢。