2025-3-17 腾讯云-大数据方向-成都面试

ConcurrentHashMap了解过吗

适用场景

  • 高并发环境,多个线程同时读写(如缓存、计数器)。
  • 需要 HashMap 的功能,但又要保证线程安全
  • 适合读多写少的场景(因为写操作需要 CAS 或锁)。

volatile是什么,解决了什么问题

volatile 是 Java 关键字,用于 保证变量的可见性 ,防止 指令重排 ,但 不保证原子性

(1)可见性问题

在多线程环境下,一个线程对变量的修改,另一个线程可能看不到 ,因为线程可能会从 CPU 缓存 读取变量,而不是最新的主存数据。

(2)防止指令重排

JVM 和 CPU 可能会优化代码执行顺序 ,导致执行结果和代码顺序不同。volatile 防止重排序,确保代码按照预期顺序执行。

(3)不保证原子性

不能 代替 synchronized 进行 原子操作

treeset和hashset区别

使用过JVM的哪些模块

jvm中,堆,栈,元空间存储的数据

String nameA = "123" String nameB = "123"

nameA和nameB在元空间中映射的是同一个地址吗? 不是

  • "123" 存储在 字符串常量池(方法区)。
  • 变量 nameA 是引用变量,存储在 中。
  • 如果用 new String("123"),则会在 中再创建一个 String 对象。

反向代理解决什么问题

算法:多个有序数组[1,2,4],[2,4,5],[2,6,7],输出有序集合的交集,Java实现

相关推荐
Bella的成长园地6 小时前
面试中关于 c++ async 的高频面试问题有哪些?
c++·面试
Abona8 小时前
C语言嵌入式全栈Demo
linux·c语言·面试
XH华9 小时前
备战蓝桥杯,第七章:函数与递归
职场和发展·蓝桥杯
她说..11 小时前
策略模式+工厂模式实现审批流(面试问答版)
java·后端·spring·面试·springboot·策略模式·javaee
七禾页丫13 小时前
面试记录14 上位机软件工程师
面试·职场和发展
前端菜鸟日常14 小时前
2026 鸿蒙原生开发 (ArkTS) 面试通关指南:精选 50 题
华为·面试·harmonyos
jiayong2315 小时前
Vue2 与 Vue3 核心原理对比 - 面试宝典
vue.js·面试·职场和发展
多多*16 小时前
Mysql数据库相关 事务 MVCC与锁的爱恨情仇 锁的层次架构 InnoDB锁分析
java·数据库·windows·sql·oracle·面试·哈希算法
cyforkk16 小时前
15、Java 基础硬核复习:File类与IO流的核心逻辑与面试考点
java·开发语言·面试
jiayong2317 小时前
Vue2 与 Vue3 常见面试题精选 - 综合宝典
前端·vue.js·面试