20165305 苏振龙《Java程序设计》第八周学习总结

第十二章

•如果想在main()以外独立设计流程,可以撰写类操作java.lang.Runnable接口,流程的进入点是操作在run()方法中。
•如果想要加装主线程,就要创建 Thread 实例,要启动额外的主线程就是调用 Thread 实例的 start() 方法。
•主线程会从main()方法开始执行,直到main()方法结束后停滞JVM。如果主线程中启动了额外线程,默认会等待被启动的所有线程都执行完run()方法才终止JVM。如果一个Thead被表示为Daemon线程,在所有的非Daemon线程都结束时,JVM自动就会终止。
•Thread基本状态图:优先权高的先执行,否则输流执行。start——>runnable——>(blocked)——>running——>dead
•安插线程:当线程使用join()加入至另一个线程时,另一个线程会等待被加入的线程工作完毕,然后在继续它的动作,join()的意思表示将线程加入称为另一个线程的流程中。
•停止线程:线程完成run()方法后,就会进入Dead,进入Dead的线程不可以再次调用start()方法,否则会抛出IllegalThreadStateException异常。

import java.util.Arrays;

•CopyOnWriteArraySet操作了List接口,这个类的实例在写入操作时,内部会建立新数组,并复制原有数组索引的参考,然后在新数组上进行写入操作,写入完成后,再将内部原参考旧数组的变量参考至新数组.

代码托管

脚本截图


上周错题总结

![](https://images2018.cnblogs.com/blog/1296997/201804/1296997-20180429211007025-139750453.png)

posted @ 2018-04-22 14:30  20165305  阅读(177)  评论(0编辑  收藏  举报