后端岗位面试题 · 编码实现 · Java
题库中标记为“后端”的结构化面试题。
共 89928 道真题 · 当前筛选命中 1178 道 · 更新 2026-08-05
筛选题目已选:编码实现 · Java
考察点
技术栈
第 101 题请说明如何使用 CompletableFuture 进行线程安排与异步任务编排? 考察 CompletableFuture 异步编程与任务编排能力第 102 题请解释AQS(AbstractQueuedSynchronizer)中共享模式与独占模式的实现差异,并说明共享模式的核心实现原理。 考察对AQS共享模式核心机制的理解,包括状态管理、队列协作与释放传播。第 103 题list里面存的是对象,用Lambda表达式实现排序和去重,请现场写一个小demo 考察Java集合操作与Lambda表达式的实际编码能力第 104 题如何脱离Spring框架实现AOP这样的功能? 考察对AOP核心思想的理解及底层实现能力第 105 题介绍你的项目里是如何实现单例模式的 考察单例模式的应用场景、实现方式与并发安全性理解第 106 题ConcurrentHashMap 为什么支持并发? 考察对 ConcurrentHashMap 并发机制、锁粒度与弱一致性的理解第 107 题启动线程的start()方法和直接调用run()方法有什么区别? 考察对线程启动机制、并发执行和线程状态的理解第 108 题请实现一个 Java 生产者-消费者模型,并说明如何保证线程安全。 考察并发编程基础与线程安全实现能力第 109 题Java 中抽象类的概念是什么?请举出一些典型的使用例子。 考察对面向对象抽象机制的理解及实际应用能力第 110 题Java如何创建多线程? 考察Java多线程创建方式的掌握程度与理解差异第 111 题final、finally、finalize 之间有什么区别? 考察对 Java 关键字语义和对象回收机制的准确理解第 112 题如何判断对象是否相等? 考察对象相等性判断的实现方式与适用场景第 113 题请使用线程池实现从1加到100,并说明实现思路。 考察线程池使用与多线程求和的设计与实现第 114 题==和equals的区别,equals和hashCode的关系是什么? 考察Java对象相等性判断原理及hashCode契约第 115 题在 JVM 中,执行 String a = "123"; String b = new String("456"); String c = a + b; 分别会发生哪些操作? 考察字符串常量池、堆内存分配和字符串拼接的底层实现第 116 题请介绍 JDK 8 中 Stream API 的核心用法和常见操作。 考察对 JDK 8 Stream 语法、流水线操作和使用的理解第 117 题请编写一个多线程程序,交替打印奇数和偶数。 考察多线程同步与线程间协作技巧第 118 题Integer a=200;Integer b=100;a == b? 考察Java包装类缓存机制和equals与==的区别第 119 题Java 集合中 HashMap 的底层数据结构是什么?请说明其存储和查找过程。 考察 HashMap 底层数组加链表/红黑树的结构及哈希寻址逻辑第 120 题实现一个HashMap(包括hash方法,插入,删除,查找等功能) 考察哈希表底层实现、冲突处理和基础操作正确性