Java面试题更新 2026-08-03

在小厂后端实习岗位的Java一面中,通常会考查哪些核心知识点?请从基础语法、集合、并发、JVM等方向进行梳理。

考察说明

考查候选人作为Java后端实习生的基础知识掌握广度和关键点理解

回答思路

  1. 【回答框架 1】Java基础方面需掌握面向对象三大特征、基本数据类型与包装类型区别、String类的不可变性及字符串常量池,能解释equals与==的差异。
  2. 【回答框架 2】集合体系应熟悉ArrayList与LinkedList底层结构与适用场景、HashMap的底层原理(数组加链表加红黑树)、扩容机制与put过程,并注意多线程下HashMap的线程不安全。
  3. 【回答框架 3】并发部分需理解synchronized与ReentrantLock的区别(锁粒度、公平性、可中断、Condition)、volatile的可见性与有序性但不保证原子性,并掌握ThreadLocal的作用与内存泄漏风险。
  4. 【回答框架 4】JVM方面应了解内存区域划分(堆、栈、方法区等)、类加载过程(加载、验证、准备、解析、初始化)、双亲委派模型,以及CMS和G1等常见垃圾收集器的特点与适用场景。
  5. 【回答框架 5】框架基础可包括Spring IOC与AOP的核心概念、SpringBean的生命周期(实例化、属性注入、初始化、销毁),并简单说明SpringMVC的请求处理流程。关键算法如快速排序、二分查找也常被考察,需能手写并分析复杂度。
  6. 【关键点 1】HashMap底层使用数组加链表加红黑树,当链表长度超过8且数组长度大于等于64时转为红黑树。
  7. 【关键点 2】volatile保证可见性和有序性,但不保证原子性,synchronized是重量级锁也提供可见性与互斥性。
  8. 【关键点 3】双亲委派模型能避免类重复加载并保证核心类安全,加载顺序为启动类加载器到应用类加载器。
  9. 【关键点 4】Spring Bean默认单例,生命周期涵盖实例化、属性填充、初始化方法调用和销毁阶段。
  10. 【关键点 5】String是不可变的,任何修改都会生成新对象,常量池中的字符串可复用。
  11. 【易错点 1】将HashMap误认为线程安全,实际多线程并发写可能导致死循环或丢失数据。
  12. 【易错点 2】混淆JVM内存中的栈与本地方法栈,以及将方法区等同于堆的一部分。
  13. 【易错点 3】回答synchronized与ReentrantLock时忽略两者在锁超时和条件等待上的差异。