测试题(三)

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)依赖反射实现灵活性。

相关推荐
郑州光合科技余经理5 分钟前
同城外卖小程序开发:下单成功后,后台导出能不能对上用户端状态
开发语言·前端·git·后端·uni-app·php·ai编程
知识分享小能手15 分钟前
C++ 学习教程,从入门到精通,C++ 入门知识 — 完整知识点(1)
开发语言·c++·学习
+VX:Fegn089535 分钟前
计算机毕业设计|基于springboot + vue旅游管理系统(源码+数据库+文档)
java·开发语言·vue.js·spring boot·课程设计
IT_陈寒1 小时前
Vue的响应式让我熬到凌晨三点,原来漏了这个小细节
前端·人工智能·后端
需要8261 小时前
MySQL 索引 B+ 树与“查询为什么变慢了
java·spring boot·spring·spring cloud·tomcat
一 乐1 小时前
二手交易平台|基于springboot + vue二手交易平台(源码+数据库+文档)
java·数据库·vue.js·spring boot·小程序
万年咸鱼1 小时前
编译Java源程序
java
Wang's Blog1 小时前
Java 项目实战: 外卖平台-删除分类的关联校验与自定义业务异常
java·服务器·项目开发
阿里嘎多学长1 小时前
2026-09-20 GitHub 热点项目精选
开发语言·程序员·github·代码托管
hai_android1 小时前
Kotlin / Android 常用函数使用示例手册
android·java·kotlin