从 == 与 equals、字符串不可变、包装类缓存、值传递到泛型擦除,梳理 Java 基础题的高频追问和版本边界
阅读全部问答JAVA INTERVIEW / 从原理到实践
Java 面试八股
不只记结论,更要讲清原理、适用边界和项目里的取舍。按专题查漏补缺,也可以直接搜索一道题。
01Java 核心
5 个专题 · 40 道题
对比 List、Map、Set 与阻塞队列的实现差异,讲清 fail-fast、CopyOnWrite 和不可变集合的适用边界
- 1. ArrayList、LinkedList、ArrayDeque 怎么选?
- 2. ArrayList 的扩容过程是怎样的?
- 3. HashMap、LinkedHashMap、TreeMap、ConcurrentHashMap 怎么选?
- 4. 什么是 fail-fast?遍历时删除为什么会抛异常?
沿着 put、扩容和树化三条主线拆解 JDK 8 HashMap,讲清下标计算、阈值设计以及并发场景下的真实风险
阅读全部问答围绕可见性、原子性、有序性梳理 volatile、CAS、AQS、线程池和 ThreadLocal,补上虚拟线程的适用边界
- 1. 创建线程有哪几种方式?为什么推荐线程池?
- 2. synchronized 的实现原理是什么?锁升级是怎么回事?
- 3. volatile 能保证什么、不能保证什么?
- 4. CAS 是什么?ABA 问题怎么解决?
从运行时数据区、对象布局到三色标记和 G1/ZGC 选型,串起 JVM 面试题与 OOM、GC 日志的排查方法
阅读全部问答02框架与数据库
5 个专题 · 40 道题
从 IoC 容器、三级缓存到 AOP 代理和事务失效,梳理 Spring 与 Spring Boot 的高频面试链路
- 1. 怎么理解 IoC 和 DI?BeanFactory 与 ApplicationContext 有什么区别?
- 2. Bean 的生命周期是怎样的?
- 3. 循环依赖是怎么解决的?为什么构造器注入不行?
- 4. Bean 是线程安全的吗?单例要注意什么?
讲清 #{} 与 ${} 的区别、Mapper 动态代理、一二级缓存、N+1 与插件机制,并给出大数据量读写和常见踩坑的解法
阅读全部问答以 InnoDB 8.0 为基线,讲清聚簇索引、索引失效、MVCC 与锁,并给出 EXPLAIN、深分页和大表变更的实战方法
阅读全部问答从底层编码、单线程模型到 RDB/AOF、淘汰策略和分布式锁,系统梳理 Redis 面试题与线上故障的应对方式
阅读全部问答对比 RabbitMQ、RocketMQ、Kafka 的能力边界,讲清不丢消息、重复消费、顺序、积压和事务消息的工程解法
阅读全部问答03分布式与工程
6 个专题 · 48 道题
从服务边界、Spring Cloud 组件到 Dubbo、超时重试与分布式事务,梳理微服务面试的主线与常见误区
- 1. 微服务应该怎么拆?什么时候不该拆?
- 2. Spring Cloud 常见组件分别解决什么问题?
- 3. 服务注册发现和负载均衡是怎么工作的?
- 4. Dubbo 和 OpenFeign 有什么区别?SPI 有什么不同?
讲清 CAP/BASE 的真实含义、分布式 ID 与幂等设计,并梳理分库分表、一致性哈希和高可用的工程权衡
阅读全部问答从握手挥手、可靠传输到 HTTP/2、HTTPS 和 Netty 的线程模型,梳理网络面试的高频考点与边界
阅读全部问答梳理进程线程协程、虚拟内存、epoll 与 CPU/内存/磁盘排查方法,并补上容器环境下 JVM 的资源边界
阅读全部问答用 SOLID 原则串起单例、工厂、策略、模板方法、代理和责任链,说明它们在 Spring 中的真实落点与过度设计边界
阅读全部问答用一套可复用的排查顺序处理 CPU 飙高、内存上涨、接口变慢、Full GC、线程池与连接池耗尽及发布回滚
阅读全部问答