![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
文章平均质量分 58
Z菌君
美团测试开发工程师
展开
-
Java只有值传递
Java 没有引用传递Java传递的引用的副本。而不是引用本身,所以引用没有传递,所以这个不叫引用传递。Java传递的是对象的引用,更确切的说是传递的对象引用的副本。原创 2022-12-28 16:13:35 · 164 阅读 · 2 评论 -
JUC实现精确顺序访问(线程通信例题)
在JUC编程中可以通过Condition类来进行精确阻塞与唤醒。Condition类主要有两种方法:1,Condition.await():使当前线程陷入阻塞,并释放锁。2, Condition.signal():唤醒该Condition对象所在的线程。下面有个例题可以帮助理解。题目要求:创建三个线程,线程1打印 " -A- " 5次 ,线程2打印" -B-" 10次,线程3打印 "-C-" 15次,并按照 A->B->C顺序进行打印,重复10轮。以下是实现过程p.原创 2022-03-19 20:21:32 · 370 阅读 · 0 评论 -
CyclicBarrier使用说明。
Barrier的意为“障碍”可以看看CyclicBarrier的构造方法当线程调用CyclicBarrier对象await()方法后会被阻塞,同时计数+1,直到达到CyclicBarrier构造方法中的预定的数目,所有线程就会被唤醒。代码实例package Condtion;import java.util.concurrent.BrokenBarrierException;import java.util.concurrent.CyclicBarrier;publi.原创 2022-03-20 10:17:30 · 128 阅读 · 0 评论 -
LinkedHashMap部分源码介绍
HashMap 底层是 数组 + 红黑树 + 链表 ,同时其是无序的,而 LinkedHashMap 刚好就比 HashMap 多这一个功能,就是其提供 有序,并且,LinkedHashMap的有序可以按两种顺序排列,一种是按照插入的顺序,一种是按照读取的顺序,而其内部是靠 建立一个双向链表 来维护这个顺序的,在每次插入、删除后,都会调用一个函数来进行 双向链表的维护 ,准确的来说,是有三个函数来做这件事,这三个函数都统称为 回调函数 ,这三个函数分别是:其主要是两个构造方法,一个是继承 HashMap ,原创 2022-10-26 10:24:19 · 151 阅读 · 0 评论