Moka面试题 · 风险判断 · Java
Moka相关面试题,按最终去重题目聚合。
共 467 道真题 · 当前筛选命中 25 道 · 更新 2026-08-05
筛选题目已选:风险判断 · Java
考察点
技术栈
第 1 题请说明你如何使用线程池,如何自定义线程池,其核心参数有哪些,以及底层实现原理是什么? 考察线程池配置、核心参数理解及底层执行机制第 2 题说一下 volatile 关键字,它起什么作用,底层机制是什么? 考察对 Java volatile 的并发语义及底层内存模型的理解第 3 题Java 中 Integer 使用 == 和 equals 比较时有什么区别? 考察 Java 包装类型缓存、自动装箱和等值比较的底层机制第 4 题HashMap在JDK 1.7和1.8中链表的插入方式有何不同?这一改动解决了什么问题? 考察对HashMap演进原因和并发安全问题的理解第 5 题ThreadLocal存在哪些问题? 考察对ThreadLocal内存泄漏、线程复用和值传递边界等风险的识别第 6 题HashMap 在多线程环境下是否线程安全?会带来哪些问题? 考察对 HashMap 并发安全性和常见并发缺陷的理解第 7 题HashMap在什么情况下会将链表转换为红黑树?什么情况下会退化为链表? 考察HashMap树化与反树化的触发条件和设计权衡第 8 题重写equals方法时为什么通常要重写hashCode方法? 考察对Java对象相等约定与哈希集合正确性的理解第 9 题在Java中,使用普通for循环遍历集合时,能否在循环过程中删除元素?请说明原因。 考察对集合遍历与修改机制的理解,尤其是快速失败安全第 10 题请解释 ThreadLocal 的实现原理,并说明其内存泄漏风险及应对措施。 考察对线程局部变量存储机制、线程隔离原理和内存泄漏防范的理解第 11 题请解释 ArrayList 的扩容机制,以及在实际使用中需要注意哪些事项? 考察 Java 集合框架中 ArrayList 的底层实现及性能优化意识第 12 题为什么JDK1.7的HashMap使用头插法,而JDK1.8改为尾插法?头插法在什么情况下会导致循环链表问题? 考察HashMap并发下死循环问题的成因及JDK1.8修复方案第 13 题JDK 1.7中HashMap在并发情况下可能导致死循环,请说明其产生原因及JDK 1.8的改进。 考察并发环境中HashMap扩容死循环的成因与修复第 14 题在 Java 中遍历 List 时能否直接修改元素?请解释 fast-fail 机制及其影响。 考察对集合遍历安全性与并发修改检测机制的理解第 15 题volatile 能保证原子性吗?为什么? 考察对 volatile 语义、原子性与并发正确性的理解第 16 题当多个线程池中的任务都完成后,如何获取并汇总它们的返回值? 考察多线程任务提交、结果获取与异常处理的综合能力第 17 题ThreadLocal 会产生内存泄漏吗?如果会,原因是什么? 考察对 ThreadLocal 内存泄漏机制的理解与风险判断能力第 18 题请介绍 ConcurrentHashMap 的实现原理、线程安全机制及适用场景。 考察对并发容器底层实现、线程安全性和适用场景的理解第 19 题volatile原理讲一下 考察对Java内存模型、可见性和有序性保障的理解第 20 题包装类和基本数据类型有哪些区别? 考察 Java 基础类型体系与装箱拆箱机制的理解