少女祈祷中...
NEKO

面试

java ThreadLocal 面试要点

java ThreadLocal 面试要点

一、ThreadLocal Q1:什么是 ThreadLocal? 答: ThreadLocal 提供线程本地变量,每个线程都有自己独立的副本,互不干扰。 核心思想:以空间换时间,用线程隔离替代同步。 ThreadLocal<String> tl = new ThreadLocal<>(); //

java 并发工具面试要点

java 并发工具面试要点

一、CountDownLatch Q1:什么是 CountDownLatch? 答: CountDownLatch 是一个同步辅助类,允许一个或多个线程等待其他线程完成操作。 核心机制: 内部维护一个计数器(基于 AQS 的 state) countDown():计数器减 1 await(

java 内存模型面试要点

java 内存模型面试要点

一、JMM 基础 Q1:什么是 JMM? 答: JMM(Java Memory Model,Java 内存模型)是 Java 虚拟机规范中定义的一套多线程内存访问规则,用于屏蔽不同硬件和操作系统的内存差异。 核心目标:定义多线程程序中,共享变量的可见性、有序性和原子性规则。 JMM 是抽象概念,不是

java 线程池面试要点

java 线程池面试要点

一、基础概念 Q1:什么是线程池?为什么需要线程池? 答: 线程池是线程的复用容器,预先创建或按需创建线程,统一管理生命周期。 使用线程池的好处:

java 可见性面试要点

java 可见性面试要点

一、可见性 Q1:什么是可见性?为什么需要它? 答: 可见性指一个线程修改了共享变量,其他线程能立即看到。 问题根源:现代 CPU 有多级缓存,每个线程可能读取到缓存中的旧值: 线程 A

java 锁面试要点

java 锁面试要点

一、synchronized 与锁升级 Q1:synchronized 的三种使用方式是什么? 答: // 1. 修饰实例方法:锁当前对象 this public synchronized void method() {} // 2. 修饰静态方法:锁当前 Class 对象 public stat

java 线程面试要点

java 线程面试要点

一、线程生命周期 Q1:Java 线程的生命周期有哪几种状态? 答: Java 线程有 6 种状态(Thread.State 枚举):

java 泛型面试要点

java 泛型面试要点

一、类型擦除(Type Erasure) Q1:什么是 Java 泛型的类型擦除? 答: Java 泛型是编译期概念,编译后泛型信息会被擦除,运行时不存在泛型。具体表现为: 无界类型 T 被擦除为 Object