![](https://img-blog.csdnimg.cn/20191225162106900.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
面试专栏
本系列主要是对面试题的整理
梓莘
zero-->hero 理性+理智。记住一句话:越努力,越幸运。犯其至难,图其至远。努力规划,实现自我。↖(^ω^)↗
展开
-
【面试专栏】Java注解和反射
Java注解和反射什么是注解Annotation是JDK5.0开始引入的新技术Annotation的作用不是程序本身,可以对程序做出解释(这一点和注释没有什么区别)可以被其它程序,比如编译器读取Annotation的格式注解以 @注释名 在代码中存在的,还可以添加一些参数值例如:@SuppressWarnings(value = "unchecked")Annotation在那里使用?可以附加在package、class、method、field等上面,相当于给他们添加了原创 2020-07-09 18:53:06 · 298 阅读 · 0 评论 -
【面试专栏】阻塞队列
文章同步更新在个人公众号“梓莘”,欢迎大家关注,相互交流。阻塞队列ArrayBlockingQueue 是一个基于数组的有界阻塞队列,此队列基按FIFO原则对元素进行排序LinkedBlockQueue:一个基于链表结构的阻塞队列,次队列按FIFO排序元素,吞吐量通常要高于ArrayBlockingQueueSynchromousQueue:一个不存储元素的阻塞队列,每个插入操作必须等...原创 2019-12-31 15:45:36 · 206 阅读 · 1 评论 -
【面试专栏】公平锁和非公平锁&可重入锁&自旋锁&独占锁/共享锁
文章同步更新在个人公众号“梓莘”,欢迎大家关注,相互交流。公平锁和非公平锁公平锁:是指多个线程按照申请锁的顺序来获取锁,也就是遵循先来后到非公平锁:是指多个线程获取锁的顺序并不是安装申请锁的顺序,有可能后申请锁的线程优先获得锁,在高并发环境下,有可能造成优先级反转或者饥饿现象。非公平就是允许加塞在并发包ReentrantLock的创建可以执行构造函数的boolean类型来得到公平锁和非...原创 2019-12-30 17:30:31 · 140 阅读 · 0 评论 -
【面试专栏】ArrayList&HashMap&HashSet是线程不安全的,写个案例并给出解决方案
文章同步更新在个人公众号“梓莘”,欢迎大家关注,相互交流。写时复制:CopyOnWriteArrayListCopyOnWrite容器即写时复制的容器,往一个容器添加元素的时候,不直接往当前容器Object[]添加,而是先将当前容器Object[]进行Copy,复制出一个新的容器Object[] newElements,然后新的容器Object[] newElwmwnts里添加元素,添加元...原创 2019-12-30 17:14:54 · 281 阅读 · 0 评论 -
【面试专栏】ABA问题
文章同步更新在个人公众号“梓莘”,欢迎大家关注,相互交流。由上一篇CAS问题我们知道其容易导致ABA问题,这篇我们来学习一下相关的内容。一、CAS为什么会导致ABA问题CAS算法实现一个重要前提是需要取出内存中某时刻的数据并在当下时刻进行比较和替换,那么在这个时间差内会导致数据的变化。比如说一个线程A从内存位置V中取出data,这时候另一个线程B也从内存中取出data,并且线程B进行了...原创 2019-12-26 11:50:53 · 202 阅读 · 0 评论 -
【面试专栏】一文理解CAS
文章同步更新在个人公众号“梓莘”,欢迎大家关注,相互交流。一、什么是CASCompareAndSwap,比较当前工作内存中的值和主内存中的值,如果相同则执行规定操作,否则继续比较直到主内存中的值一致为止。CAS有3个操作数,内存值为V,旧的预期值为A,要修改的更新值为B。当且仅当预期值A和内存值V相同时,将内存值V修改为B,否则什么都不做。Demopackage com.zishen...原创 2019-12-26 11:05:39 · 177 阅读 · 1 评论 -
【面试专栏】深入理解volatile
文章同步更新在个人公众号“梓莘”,欢迎大家关注,相互交流。谈谈对volatile的理解volatile是java虚拟机提供的轻量级的同步机制(同步比如synchronized)拥有3大特性:保证可见性不保证原子性禁止指令重排简单来说也就是volatile保证可见和有序,但是并不保证原子性。要更好的理解这个需要对JMM有个大概的了解,接下来先看下JMM的简单概念。谈谈JMM(...原创 2019-12-25 17:14:47 · 178 阅读 · 1 评论