Java多线程知识脉络(自测、学习方法)


推荐一个巩固知识的比较不错的方法。

首先,选择一个你将要巩固的知识块儿,然后拿出一张白纸,按照 总-分 的方式将所有知识点罗列出来。先总,即将这块知识的框架、轮廓写下来,再分,即把对应于每一小块儿的知识点写下来。你不需要一字不漏的把这些知识全部再现于纸上,但最起码你要把关键字写下来,并且你能保证你写的这部分是你已经掌握了的,即你虽然只写了部分关键字,但倘若让你复述有关它的全部细节,你依然能够做到。那就说明这部分你掌握的还算不错。

在写的过程中,不要翻书,不要查资料,全凭印象,如果碰到一个知识点是你记得不太牢固的,即你无法准确的写下来,或者难以动笔,那么要留意它。如果有哪一个知识点是你完全遗漏了的,那它就是你的盲区,你最好把它再学一遍。(不要侥幸的认为这只是你当时忘了写这一部分,忘了写正好说明你很难把这部分知识与其它知识联系在一起,无法举一反三,以点带面,还有比这更糟糕的么?)

比如,现在来一个测试如何?对于学过Java多线程的大家来说,请看下面的关键字,如果对于每一个关键字,你都非常熟悉,那么恭喜你,你这一部分的知识掌握的相当nice,但是如果哪一个地方你出现了迷惑,或者似曾相识,或者难以回顾起它的相关细节,无法以点带面,那么,你可能需要做一些复习计划了。


Java多线程

<总>

线程与多线程
怎么创建线程?
Java线程的生命周期
线程同步
线程安全
线程池
线程通信
生产者消费者模型

<分>

什么是线程和进程?
什么是多线程和多进程?
多线程与多进程之间的区别?
并行与并发的区别?
Thread类?
Runnable接口?
Callable接口?
Java创建一个线程的几种方法?
这几种方法之间的区别?
线程的五种状态?
状态之间怎么转换?
线程的优先级?
start()、run()、join()?
守护线程?
volatile?
线程内存模型?
为什么需要线程同步?
怎么实现线程同步?
什么是原子操作?
synchronized?
用synchronized同步线程的优劣?
如何逻辑封装synchronized?
synchronized修饰静态类会怎样?
有哪些线程安全的类?
什么是可重入锁?
什么是死锁?
interrupt()?
多线程的竞争与协调?
wait()、notify()?
怎么使用ReentrantLock?
怎么使用Condition?
怎么使用ReadWriteLock?
什么是乐观锁和悲观锁?
怎么使用StampedLock?
使用Concurrent集合?
使用Atomic?
什么是线程池?
为什么要用到线程池?
怎么创建线程池?
Executors类与ExecutorService接口?
怎么使用Future?
使用CompletableFuture?
怎么使用ThreadLocal?
怎么用管道实现线程间通信?
生产者消费者模型代码?
多线程算法?(了解)


差不多就这些吧,不妨拿一张纸对这上面的每一个知识点写一写如何?或者口头说出来也可以,最好不要只在脑海中想想然后就跳过去,这样不好!!你不说出来、不写出来,你永远不知道自己的掌握程度。

博主最近用这种方法来学习感觉效果挺不错的,故分享一下。也算是自己的一个自测,以后还会来巩固。

(切忌:不要觉得麻烦,每个人往往都高看了自己的记忆力)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值