21\] volatile 保证线程间可见性,修改立即对其他线程可见。 禁止指令重排,让代码执行顺序更符合预期。 常用于标志位、单例模式。 \[22\] Arrays.sort 原理 基本类型使用双轴快速排序,速度快。 对象类型使用 TimSort(归并+插入优化算法)。 复杂度稳定在 O(n log n)。 \[23\] 使用缓存的优缺点 优点:访问速度提升显著。 缺点:需要维护一致性,可能出现伪共享、缓存过期错乱等情况。 \[24\] 线程安全集合 包括 Vector、Hashtable、ConcurrentHashMap、CopyOnWriteArrayList。 现代开发更倾向 ConcurrentHashMap、CopyOnWrite 系列。 \[25\] LRU 算法 最近最少使用,淘汰最长时间未用的数据。 常用于缓存、页面置换。 \[26\] BeanFactory 负责 Bean 的创建、管理、销毁,是 Spring 最基础的 IOC 容器。 \[27\] IoC(控制反转) 对象的创建与生命周期由容器管理,而不是业务代码手动 new,降低耦合、提升灵活性。 \[28\] 依赖注入 Spring 自动将需要的 Bean 注入到类中,例如构造注入、Setter 注入、字段注入。 \[29\] Bean 作用域 singleton:单例,全局唯一对象。 prototype:多例,每次 getBean 都会创建新对象。 可使用 @Lazy 延迟加载。 \[30\] 反射的作用 可在运行时动态获取类结构、创建对象、访问方法。 大量框架(Spring、MyBatis)依赖反射实现灵活性。
相关推荐
Hello eveybody8 小时前
介绍最大公因数和最小公约数(Python)谭欣辰8 小时前
C++ 堆 的基础与 二叉堆详解西海天际蔚蓝8 小时前
用AI写的一个包含web和小程序的个人简历Ulyanov8 小时前
《PySide6 GUI开发指南:QML核心与实践》 第十篇:综合实战——构建完整的跨平台个人管理应用ian4u8 小时前
车载 Android C++ 完整技能路线:从基础到进阶lly2024068 小时前
JSP 过滤器郝学胜-神的一滴8 小时前
[力扣 227] 双栈妙解表达式计算:从思维逻辑到C++实战,吃透反向波兰式底层原理aq55356008 小时前
数字资源分发的技术革命与未来趋势AI玫瑰助手8 小时前
Python基础:元组的定义与不可变特性(对比列表)蚰蜒螟8 小时前
深度剖析:从 clone3 到 start_routine —— Linux 新线程的“破茧成蝶”之旅