博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20175320 2018-2019-2 《Java程序设计》第10周学习总结
阅读量:5266 次
发布时间:2019-06-14

本文共 1625 字,大约阅读时间需要 5 分钟。

20175320 2018-2019-2 《Java程序设计》第10周学习总结

教材学习内容总结

本周学习了教材的第十二章的内容,在这章中介绍了如何使用Java实现多线程机制,着重讲了线程是如何运行的,以及如何创建线程对象并使用一些线程的常用方法。

线程与进程

一个进程在执行过程中,可以产生多个线程,线程间可以共享进程中的某些内存单元并实现数据交换、实时通信与必要的同步操作。而多线程是指一个应用程序中间同时存在几个执行体,Java应用程序总是从主类的main方法开始指行,如果main方法中没有创建其他的线程,main方法返回时,JVM就会结束我们的Java应用程序。如果main方法中又创建了其他线程,那么JVM就要在主线程和其他线程之间轮流切换,main方法即使执行完最后的语句,JVM也不会结束Java应用程序,直到所有线程都结束后才结束Java应用程序。线程的优先级可以通过setPriority(int grade)方法调整,如果参数不在1到10的范围内,那么setPriority便产生一个IllegalArgumenException异常。通过getPriority方法返回线程的优先级。

Thread类与线程的创建

用Thread类或子类创建线程对象,使用Thread子类的时候需要重写父类的run()方法。使用Thread类直接创建线程对象时使用Thread(Runnable target)构造-方法,参数为目标对象,并使参数类实现Runnable接口。目标对象和线程之间有目标对象和线程完全解耦和目标对象组合线程两种关系,一种可以获得线程对象的引用,另一种无法获得线程对象的引用。

常用方法:

  • 1、start():启动线程,调用一次后就不必再次调用。
  • 2、run():系统自动调用而用户程序不得引用。
  • 3、sleep(int millsecond):休眠线程,必须再try-catch语句中使用。
  • 4、isaAlive():判断线程是否具有实体。
  • 5、currentThread():获得当前正在运行的线程。
  • 6、interrupt():将休眠的线程唤醒。
  • 7、wait():使线程进入等待状态。
  • 8、notify():将线程从等待状态唤醒。

其他

  • 1、可以使用join()和其他线程联合。
  • 2、Java可以使用Timer类来周期性地执行操作,Timer类需要设置间隔时间和监视器,且可通过start()stop()以及restart()来控制计时器的启停。

教材学习中的问题和解决过程

  • 问题1:不知道线程的必要性。
  • 问题1解决方法:通过教材的学习我了解到线程可以使多个操作一起运行,不用像一般的程序一样一定要一项操作完成使才能进行下一项。这使得我们可以近似于同时运行多个耗时较多的程序,提高运行效率。

代码调试中的问题和解决过程

无问题。

1591606-20190504165212936-780983819.png

上周考试错题总结

  • 错题1:忽略了该题是多选题,且对各种运行错误不够熟悉。
    1591606-20190504165231840-1046278162.png

其他(感悟、思考等,可选)

从以前就听说过线程这一名称,但之前很少细致地去了解线程,通过这周的学习我了解到了线程的重要作用,而Java本身就支持多线程,只需要使用现有的类以及方法即可,这给我们的编程带来了很大的便利。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第七周 703/7096 2/16 30/212

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。

耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:,

  • 计划学习时间:25小时
  • 实际学习时间:30小时
  • 改进情况:多看看

参考资料

转载于:https://www.cnblogs.com/nameless-student/p/10808965.html

你可能感兴趣的文章
SpringMVC入门(二)—— 参数的传递、Controller方法返回值、json数据交互、异常处理、图片上传、拦截器...
查看>>
git的安装
查看>>
mysql 8.0 zip包安装
查看>>
Spring框架系列(三)--Bean的作用域和生命周期
查看>>
springboot + mybatis
查看>>
awk 统计
查看>>
CSS min-height 属性
查看>>
模板设计模式的应用
查看>>
实训第五天
查看>>
平台维护流程
查看>>
2012暑期川西旅游之总结
查看>>
Linux发行版的排行
查看>>
12010 解密QQ号(队列)
查看>>
2014年辛星完全解读Javascript第一节
查看>>
装配SpringBean(一)--依赖注入
查看>>
daydayup2 codeforces143C
查看>>
ANT打包J2EE项目war包
查看>>
UESTC-我要长高 DP优化
查看>>
java选择文件时提供图像缩略图[转]
查看>>
当DIV内出现滚动条,fixed实效怎么办?
查看>>