12 2020 档案

二叉树
摘要:1.简述 二叉树是n(n>=0)个结点的有限集合,该集合或者为空集(称为空二叉树),或者由一个根结点和两棵互不相交的、分别称为根结点的左子树和右子树组成。 二叉树的定义: 每个节点最多有两个子节点的树称为二叉树。 二叉树的特点: 每个节点最多有两个子树(注意:是最多有,而不是只有)。 左子树和右子树 阅读全文

posted @ 2020-12-31 11:10 码农记录 阅读(181) 评论(0) 推荐(0)

Exchanger类
摘要:1.简述 Exchanger是适用在两个线程之间数据交换的并发工具类,它的作用是找到一个同步点,当两个线程都执行到了同步点(exchange方法)之后(有一个没有执行到就一直等待,也可以设置等待超时时间),就将自身线程的数据与对方交换。 Exchanger使用场景: 线程间交互数据。 2.Excha 阅读全文

posted @ 2020-12-26 10:53 码农记录 阅读(209) 评论(0) 推荐(0)

Semaphore类
摘要:1.简述 Semaphore通常我们叫它信号量, 可以用来控制同时访问特定资源的线程数量,通过协调各个线程,以保证合理的使用资源。 Semaphore对于信号量的控制是基于AQS(AbstractQueuedSynchronizer)来做的。Semaphore有一个内部类Sync继承了AQS。而且S 阅读全文

posted @ 2020-12-25 15:14 码农记录 阅读(196) 评论(0) 推荐(0)

Cyclicbarrier类
摘要:1.简述 CyclicBarrier字面意思是可循环(Cyclic)使用的屏障(Barrier)。它要做的事情是让一组线程到达一个屏障(同步点)时被阻塞,直到最后一个线程到达屏障时候,屏障才会开门。所有被屏障拦截的线程才会运行。 和CountdownLatch比较类似,但CyclicBarrier更 阅读全文

posted @ 2020-12-23 15:06 码农记录 阅读(124) 评论(0) 推荐(0)

CountDownLatch类
摘要:1.简述 CountDownLatch是Java1.5之后引入的Java并发工具类(闭锁的一个实现),放在java.util.concurrent包下。用给定的计数初始化CountDownLatch。由于调用了countDown方法,所以在当前计数到达零之前,await方法会一直受阻塞。之后,会释放 阅读全文

posted @ 2020-12-22 16:58 码农记录 阅读(201) 评论(0) 推荐(0)

transient修饰符
摘要:1.简述 transient修饰符用于类属性、变量,表示该类的序列化过程在为该类的任何实例创建持久字节流时应该忽略此类变量。 transient使用场景: 在类实现序列化接口,而类下某个变量不想被序列化的情况下,用transient修饰该变量,可避免该变量被序列化。 2.transient的使用 在 阅读全文

posted @ 2020-12-21 10:11 码农记录 阅读(2350) 评论(0) 推荐(0)

volatile修饰符
摘要:1.简述 volatile是Java提供的一种轻量级的同步机制。Java语言包含两种内在的同步机制:同步块(或方法)和volatile变量,相比于synchronized(synchronized通常称为重量级锁),volatile更轻量级,因为它不会引起线程上下文的切换和调度。但是volatile 阅读全文

posted @ 2020-12-18 14:55 码农记录 阅读(701) 评论(0) 推荐(0)

ThreadLocal类说明
摘要:1.简介 ThreadLocal翻译成中文比较准确的叫法应该是:线程局部变量。 ThreadLocal是一个关于创建线程局部变量的类。 通常情况下,我们创建的变量是可以被任何一个线程访问并修改的。而使用ThreadLocal创建的变量只能被当前线程访问,其他线程则无法访问和修改。相当于线程的priv 阅读全文

posted @ 2020-12-16 14:19 码农记录 阅读(212) 评论(0) 推荐(0)

Java 泛型
摘要:1.简述 泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。 这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛 阅读全文

posted @ 2020-12-03 15:46 码农记录 阅读(195) 评论(0) 推荐(0)

导航