排序
面试题:Java Object 类中有什么方法,有什么作用?
在Java中,Object类是所有类的直接或间接父类。这意味着每个类至少继承了Object类的方法,即使没有显式地声明继承关系。以下是Object类中定义的一些重要方法及其作用: public boolean equals(O...
面试题:什么是 Java 中的不可变类?
在Java中,不可变类(Immutable Class)是指一旦一个对象被创建并且初始化后,其状态就不能再被改变的类。这意味着该对象的属性在对象创建之后不能被修改,任何对它的“修改”操作都会返回一个...
面试题:JDK 1.8 对 HashMap 除了红黑树还进行了哪些改动?
在 JDK 1.8 中,除了引入红黑树(用于优化链表过长时的查询效率)外,HashMap 还进行了多项重要改动,以下是主要的优化点: 1. 哈希函数的优化 改进计算方式:在 JDK 1.7 中,HashMap 的哈希值...
面试题:Java 中的 ThreadLocal 是如何实现线程资源隔离的?
ThreadLocal 在 Java 中用于提供线程局部变量,即每个访问 ThreadLocal 变量的线程都有自己独立初始化的副本。这种机制确保了线程之间的资源隔离,避免了多线程环境下的数据共享问题。 下面是 T...
面试题:你了解时间轮(Time Wheel)吗?有哪些应用场景?
时间轮(Time Wheel)概述 时间轮是一种用于处理定时任务的高效数据结构,常被应用于需要大量定时器的场景中。 它模仿了时钟的工作原理,通过一个循环队列来存储定时任务,并以固定的时间间隔向...
面试题:为什么 Java 中 CMS 垃圾收集器在发生 Concurrent Mode Failure 时的 Full GC 是单线程的?
当使用CMS(Concurrent Mark-Sweep)垃圾收集器时,'Concurrent Mode Failure' 是指在CMS尝试以并发模式执行老年代的垃圾回收时,由于老年代空间不足而无法完成该过程,导致不得不触发一次Full ...
面试题:什么是 Java 中的自动装箱和拆箱?
在Java中,自动装箱(Autoboxing)和拆箱(Unboxing)是Java编译器提供的两种便利机制,用于简化基本数据类型与它们对应的包装类之间的转换过程。 自动装箱(Autoboxing) 定义:自动装箱是指将...
面试题:Java 的 StringBuilder 是怎么实现的?
StringBuilder 是 Java 中用于高效拼接字符串的一个可变序列类,位于 java.lang 包中。它通过减少创建中间的 String 对象来提高性能,特别是在需要进行大量字符串操作的场景下。以下是 StringBu...
面试题:Java 中有哪些集合类?请简单介绍
Java 提供了丰富的集合框架(Collections Framework),它包括了一系列用于存储和操作对象组的接口和类。以下是 Java 集合框架中一些主要的集合类及其简单介绍: 1. List 接口实现类 ArrayList...
面试题:Synchronized 和 ReentrantLock 有什么区别?
在 Java 中,Synchronized 和 ReentrantLock 都是用于实现线程同步的机制,但它们之间存在一些关键的区别。以下是两者的主要区别: 1. 实现方式 Synchronized:它是Java语言的关键字,是一种隐...