java共193篇

面试题:线程的生命周期在 Java 中是如何定义的?

在 Java 中,线程的生命周期定义了线程从创建到终止所经历的不同状态。这些状态由 Thread.State 枚举类型表示,具体包括以下几种: 1. 新建(New) 当一个 Thread 对象被创建时,就进入了新建状...
程序百科的头像-程序百科程序百科11个月前
6315

面试题:你使用过 Java 中的哪些原子类?

在 Java 中,原子类(Atomic Classes) 是 java.util.concurrent.atomic 包下的一组类,它们基于 CAS(Compare-And-Swap) 实现了线程安全的原子操作,避免了使用 synchronized 锁带来的性能开...
程序百科的头像-程序百科程序百科11个月前
636

面试题:JDK 动态代理和 CGLIB 动态代理有什么区别?

JDK 动态代理和 CGLIB 动态代理是两种实现动态代理的机制,它们各自有不同的应用场景、优缺点。以下是两者的主要区别: JDK 动态代理 工作原理:JDK 动态代理主要通过 java.lang.reflect.Proxy ...
程序百科的头像-程序百科程序百科11个月前
636

面试题:JVM 垃圾回收调优的主要目标是什么?

JVM垃圾回收(Garbor Collection, GC)调优的主要目标集中在以下几个方面: 减少GC停顿时间(Pause Time): 对于许多应用程序,特别是那些需要快速响应的实时系统或交互式应用,减少垃圾回收导...
程序百科的头像-程序百科程序百科11个月前
6215

面试题:Synchronized 和 ReentrantLock 有什么区别?

在 Java 中,Synchronized 和 ReentrantLock 都是用于实现线程同步的机制,但它们之间存在一些关键的区别。以下是两者的主要区别: 1. 实现方式 Synchronized:它是Java语言的关键字,是一种隐...
程序百科的头像-程序百科程序百科11个月前
625

面试题:Java 中的 hashCode 和 equals 方法之间有什么关系?

在 Java 中,hashCode() 和 equals() 方法是 Object 类中的两个重要方法,它们用于定义对象的相等性和哈希值。这两个方法之间有着紧密的关系,尤其是在将对象用作集合(如 HashMap, HashSet 等...
程序百科的头像-程序百科程序百科11个月前
625

面试题:什么是 Java 中的原子性、可见性和有序性?

在 Java 并发编程中,原子性(Atomicity)、可见性(Visibility)和有序性(Ordering) 是 Java 内存模型(Java Memory Model, 简称 JMM)中保障多线程程序正确执行的三大核心特性。它们分别解...
程序百科的头像-程序百科程序百科11个月前
6210

面试题:Java 中的 WeakHashMap 是什么 ?

WeakHashMap 是 Java 中的一种特殊的哈希映射实现,它位于 java.util 包中。与大多数其他映射不同,WeakHashMap 使用弱引用(Weak Reference)作为其键,这意味着在 WeakHashMap 中存储的键-值...
程序百科的头像-程序百科程序百科11个月前
6210

面试题:你使用过 Java 的反射机制吗?如何应用反射?

Java的反射机制提供了一种在运行时动态获取类信息以及动态调用对象方法的能力。通过反射,你可以在程序运行时检查或“反射”自身,并操纵内部属性和方法。以下是关于如何使用Java反射机制的一些...
程序百科的头像-程序百科程序百科11个月前
6111

面试题:什么是 Java 的 Timer?

在 Java 中,Timer 是一个用于调度未来某个时间点执行一次或周期性执行任务的工具类。它位于 java.util 包中,通过创建一个后台线程来执行计划的任务。 尽管 Timer 类提供了一种相对简单的方式...
程序百科的头像-程序百科程序百科11个月前
6113