排序
面试题: Java 中 ReentrantLock 的实现原理是什么?
ReentrantLock 是 Java 提供的一个显式锁实现,位于 java.util.concurrent.locks 包中。 它提供了与 synchronized 类似的同步功能,但相比 synchronized,它更加灵活,并提供了更多的特性,如公...
面试题:你常用哪些工具来分析 JVM 性能?
分析 JVM 性能是优化 Java 应用程序的关键步骤之一。以下是一些常用的工具和技术,它们可以帮助你监控和分析 JVM 的性能: 1. JDK 自带工具 jstat:用于监控JVM的性能统计信息,包括垃圾回收、...
面试题:什么是 Java 中的常量池?
Java中的常量池是一个重要的运行时数据结构,主要用于存储编译期已知的字面量以及动态生成的符号引用等内容。它在类加载、链接和运行过程中扮演着关键角色。常量池主要分为两种类型:静态常量池...
面试题:什么是 Channel?
在Java中,Channel(通道)是java.nio包的一部分,它代表了一个与实体如硬件设备、文件、网络套接字等的开放连接,通过这个连接可以进行数据的读取和写入。通道是对传统的流(Stream)模型的一...
面试题:Java 泛型擦除是什么?
Java中的泛型擦除(Generics Erasure)是Java编译器在处理泛型时采用的一种机制。这种机制主要源于Java的设计历史和向后兼容性的考虑。简单来说,泛型信息只存在于源代码级别,在编译成字节码时...
面试题:Java 中的 IdentityHashMap 是什么?
IdentityHashMap 是 Java 中 Map 接口的一个特殊实现,位于 java.util 包中。与传统的 HashMap 不同,IdentityHashMap 在比较键是否相等时使用的是对象的引用(reference)而不是对象的内容,也...
面试题:Java 中的 InheritableThreadLocal 是什么?
InheritableThreadLocal 是 Java 中 ThreadLocal 类的一个子类,它提供了一种机制来在线程创建时将 ThreadLocal 变量的值从父线程传递给子线程。 这意味着当一个新的子线程被创建时,它可以继承...
面试题:什么是 Java 的 CyclicBarrier?
Java 中的 CyclicBarrier(循环屏障)是 java.util.concurrent 包提供的一个同步工具类,用于协调多个线程在某个“屏障点”(Barrier Point)等待彼此,直到所有线程都到达后再一起继续执行。它...
面试题:Java 的 CMS 垃圾回收器和 G1 垃圾回收器在记忆集的维护上有什么不同?
CMS(Concurrent Mark-Sweep)和G1(Garbage First)垃圾回收器在记忆集(Remembered Set, RS)的维护上有显著的不同,这些差异主要源于它们的设计目标和实现机制的不同。以下是两者在这方面的...
面试题:什么是 Java 中的继承机制?
在Java中,继承是一种机制,它允许一个类(称为子类或派生类)继承另一个类(称为父类或基类)的属性和方法。通过继承,子类可以重用、扩展和修改父类的行为,而无需重新编写已有代码。这是面向...
