20165236 2017-2018-2 《Java程序设计》第八周学习总结
一、第十二章教材内容总结:
1、Java的多线程机制;
多线程是指一个应用程序中同时存在几个执行体,按几条不同的执行线索共同工作的情况,它使得编程人员可以很方便地开 发出具有多线程功能、能同时处理多个任务的功能强大的应用程序。
主线程(main线程):
当JVM加载代码,发现main方法后,就会启动一个线程,这个线程就是“主线程”。
2、线程的状态与生命周期
新建、运行、中断、死亡;
3、Thread类与线程的创建
线程的创建:用Thread的子类创建线程对象;直接使用Thread类创建线程对象;
目标对象与线程的关系;
关于run方法启动的次数;
4、线程的常用方法
start():调用该方法启动线程;
run():定义线程对象被调度之后所执行的操作;
sleep(int millsecond)、isAlive()、currentThread()、interrupt;
5、线程同步
即程序中的若干个线程都需要使用一个方法,这个方法用synchronized给予了修饰。
6、协调同步的线程
wait() 方法可以中断方法的执行,使本线程等待,暂时让出CPU的使用权,并允许其它线程使用这个同步方法。
notifyAll() 方法通知所有的由于使用这个同步方法而处于等待的线程结束等待。曾中断的线程就会从刚才的中断处继续执 行这个同步方法,并遵循“先中断先继续”的原则。
notify() 方法只是通知处于等待中的线程的某一个结束等待。
7、线程联合
一个线程A在占有CPU资源期间,可以让其他线程调用join()和本线程联合。
8、GUI线程
当JAVA程序包含图形用户界面(GUI)时,JAVA虚拟机在运行应用程序时会自动启动更多线程,其中AWT-EventQuecue 线程负责处理GUI事件,AWT-Windows线程负责将窗体或组件绘制到桌面。
9、计时器线程
二、脚本运行结果截图:
三、上周错题总结
四、本周学习感悟:
又经过一周的学习,我又重新认识到Java学习是一个循序渐进的过程,只有走好其中的每一步,不放弃任何一个困难,才能不断地学好Java。