排序
面试题:什么是 Java 中的迭代器(Iterator)?
在Java中,迭代器(Iterator)是一种设计模式的实现,用于遍历集合(如列表、集合或映射的键集等)中的元素,而无需暴露该集合的底层表示形式。迭代器提供了一种统一的方式来访问集合中的元素,...
面试题:Java 中包装类型和基本类型的区别是什么?
在 Java 中,基本类型(Primitive Types)和包装类型(Wrapper Classes)都用于存储数值数据,但它们之间存在一些关键的区别。以下是基本类型与对应的包装类型的对比及其主要区别: 基本类型 定...
面试题:Java 中 volatile 关键字的作用是什么?
volatile 是 Java 中的一个关键字,用于声明变量可以在程序的其他部分被修改,尤其是在多线程环境下。它的主要作用是保证变量的可见性和禁止指令重排序优化,但不会提供原子性操作。下面详细解...
面试题:你使用过 Java 的累加器吗?
在 Java 中,“累加器”(Accumulator)通常指的是用于多线程环境下高效执行累加操作的并发工具类。Java 提供了多种方式来实现累加器,其中最常用的是: ✅ 一、AtomicInteger / AtomicLong 这...
面试题:JVM 垃圾回收调优的主要目标是什么?
JVM垃圾回收(Garbor Collection, GC)调优的主要目标集中在以下几个方面: 减少GC停顿时间(Pause Time): 对于许多应用程序,特别是那些需要快速响应的实时系统或交互式应用,减少垃圾回收导...
面试题:JVM 有那几种情况会产生 OOM(内存溢出)?
Java虚拟机(JVM)在运行过程中可能会遇到多种原因导致的内存溢出(OutOfMemoryError,简称OOM)。以下是几种常见的OOM情况及其产生原因: Java堆空间不足(Java heap space): 当创建对象时,...
面试题:Java 中 final、finally 和 finalize 各有什么区别?
在Java中,final、finally 和 finalize 是三个不同的概念,各自有不同的用途和意义。下面分别介绍它们的区别: final 用途:final 是一个关键字,可以用来修饰类、方法或变量。 当用于类时(如 ...
面试题:Java 中 Exception 和 Error 有什么区别?
在 Java 中,Exception 和 Error 都是 Throwable 类的直接子类,它们都用于表示程序运行期间发生的异常情况。尽管它们有相似之处,但各自代表了不同类型的异常状况,并且在处理方式上也有所区别...
面试题:Java 中的 ThreadLocal 是如何实现线程资源隔离的?
ThreadLocal 在 Java 中用于提供线程局部变量,即每个访问 ThreadLocal 变量的线程都有自己独立初始化的副本。这种机制确保了线程之间的资源隔离,避免了多线程环境下的数据共享问题。 下面是 T...
面试题:你了解时间轮(Time Wheel)吗?有哪些应用场景?
时间轮(Time Wheel)概述 时间轮是一种用于处理定时任务的高效数据结构,常被应用于需要大量定时器的场景中。 它模仿了时钟的工作原理,通过一个循环队列来存储定时任务,并以固定的时间间隔向...
