Java线程安全与匿名内部类
✅ 一、局部变量 vs 成员变量 特性 局部变量(方法内) 成员变量(类字段) 存储位置 栈(Stack) 堆(Heap,随对象存在) 默认值 ❌ 没有,默认必须显式初始化 ✅ 有(0, false, null 等) 生命周期 方法...
✅ 一、局部变量 vs 成员变量 特性 局部变量(方法内) 成员变量(类字段) 存储位置 栈(Stack) 堆(Heap,随对象存在) 默认值 ❌ 没有,默认必须显式初始化 ✅ 有(0, false, null 等) 生命周期 方法...
final 是 Java 中用于表达“不可变性”(Immutability)的关键字,可修饰变量、方法和类。其核心作用是限制变更,提升代码安全性与可读性。 1. final 修饰变量局部变量 必须在声明时或使用前显式初始化; 一旦赋值,不能重新赋值;...
ThreadLocal结构ThreadLocal 的设计在 Java 中是为了实现线程隔离,让每个线程拥有自己的私有变量副本,避免多个线程访问共享数据时的竞争和同步问题。它背后的核心思想是 线程本地存储,即每个线程都可以独立存储自己的数据,线程之间不...
Spring Bean 的生命周期其实就是 一个 Bean 从创建、初始化、使用、销毁 的完整过程。Spring 容器(ApplicationContext)在管理 Bean 的过程中,会按照固定的流程来操作。下面我给你按顺序梳理一下: 1. 实例...
1.定义一个限流注解,方便AOP调用12345678910111213141516171819202122232425262728293031@Target(ElementType.METHOD) @Retention(RetentionPolic...
布隆过滤器的核心思想是: 使用一个大的 位数组(BitSet) 使用 多个哈希函数(HashFunction) 插入元素时,对元素进行多次哈希并将对应的位数组位置置为true(遍历哈希函数,便于使用不同的种子来把一个要哈希的对象变为多个int值放入...
首先HashMap是初始容量为 16,负载因子为 0.75,则扩容阈值为 16 × 0.75 = 12。当存入第 13 个元素时,HashMap 就会触发扩容。当触发扩容时,HashMap 的容量会扩大为当前容量的两倍。例如,容量从 16 增加到 3...
三门问题(Monty Hall problem)是一个有关于博弈论的趣味数学问题。问题名字来自美国的电视游戏节目Let’s Make a Deal的主持人蒙提·霍尔(Monty Hall)。参赛者会看见三扇关闭了的门,其中一扇的后面有一辆汽车,选中...