![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试分享
文章平均质量分 68
西二旗C罗
专注分享Java后端生态圈中高级技术
展开
-
ThreadLocal
ThreadLocal 提供线程的局部变量,每个线程都可以通过 get() 和 set() 对局部变量进行操作而不会对其他线程的局部变量产生影响,实现了线程之间的数据隔离。原理描述每个 Thread 维护着一个 ThreadLocalMap 的引用ThreadLocalMap 是 ThreadLocal 的内部类,用 Entry 来进行存储调用 ThreadLocal 的 set() 方法时,实际上就是往 ThreadLocalMap 设置值,key 是 ThreadLocal 对象,值是传递进来原创 2022-07-14 11:02:32 · 133 阅读 · 1 评论 -
volatile关键字
首先直接给出总结:volatile是虚拟机提供的轻量级同步机制,主要包含以下三个特点:保证可见性不保证原子性禁止指令重排下面我们针对几个特点展开说说:可见性根据JMM(Java内存模型),我们可以知道:各个线程对主内存中共享变量的操作都是各个线程各自拷贝到自己的工作内存进行操作后再写回到主内存中的。这就可能存在一个线程AAA修改了共享变量X的值但还末写回主内存时,另外一个线程BBB又对主内存中同一个共享变量X进行操作,但此时A线程工作内存中共享变量x对线程B来说并不可见,这种工作内存与主内存原创 2021-12-02 16:41:47 · 157 阅读 · 0 评论 -
Java常见异常
面试中经常会被问到一个“小”问题,就是“你能说出来5个常见的Java异常吗”?之所以“小”字加了引号,是因为其实这个问题看似简单,但是却很考验你的技术功底和平时的编码难易程度。首先,来一个大家都能直接想到的回答:NullPointerExceptionClassCastExceptionArrayIndexOutOfBoundsExceptionNumberFormatExceptionIOException具体异常是什么意思和在什么场景下会出现,我在这里就不展开说了,毕竟这都是最最最基本原创 2021-11-23 15:02:31 · 74 阅读 · 0 评论 -
几张图给你说明白Spring Bean的生命周期
几张图给你捋明白Spring Bean的生命周期文章目录几张图给你捋明白Spring Bean的生命周期背景面试官怎么问?什么是bean生命周期准备创建创建BeanFactoryBeanFactory和FactoryBean的区别创建对象实现aware接口调用init-method调用BPP的after获得完成对象完整流程图完整文字描述背景Spring Bean的生命周期绝对是面试中必考的问题,虽然知道是必考,但是有的人就是记不住,下面这几张图帮你搞定Spring Bean的生命周期,想忘都难。PS原创 2021-06-24 17:31:19 · 229 阅读 · 0 评论