面试题:为什么在 React 中使用 className 而不是 class?
在 React 中使用 className 而不是 class 来指定 HTML 元素的 CSS 类,主要原因如下: 1. JavaScript 语言保留字冲突 这是最核心的原因。 class 是 JavaScript (ES6) 中的一个保留关键字,用于...
面试题:React 的触摸事件有哪些?
在 React 中,为了支持移动设备上的触摸交互,提供了一系列触摸事件(Touch Events)。这些事件与原生 DOM 的触摸事件一一对应,但遵循 React 的合成事件系统(SyntheticEvent),并采用驼峰命...
面试题:Java 中 final、finally 和 finalize 各有什么区别?
在Java中,final、finally 和 finalize 是三个不同的概念,各自有不同的用途和意义。下面分别介绍它们的区别: final 用途:final 是一个关键字,可以用来修饰类、方法或变量。 当用于类时(如 ...
面试题:什么是 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 ...
面试题:MySQL 在设计表(建表)时需要注意什么?
在设计MySQL表(建表)时,有多个方面需要考虑以确保数据库的性能、可维护性和数据完整性。以下是一些关键点: 选择合适的数据类型:为每个字段选择最合适的数据类型非常重要。例如,使用INT而...
面试题:MySQL 的 Doublewrite Buffer 是什么?它有什么作用?
1. Doublewrite Buffer 的定义 Doublewrite Buffer(双写缓冲区)是 MySQL InnoDB 存储引擎 中的一个关键机制,用于解决 部分页写入失败(Partial Page Write) 问题。 内...









