20165235 祁瑛 2018-4 《Java程序设计》第八周学习总结
20165235 祁瑛 2018-4 《Java程序设计》第八周学习总结
教材学习内容总结
操作系统与进程
程序是一段静态的代码,它是应用软件执行的蓝本。进程是程序的一次动态执行过程,它对应了从代码加载,执行至执行完毕的一个完整过程,这个过程也是进程本身从产生,发展至消亡的过程。
进程与线程
线程间可以共享进程中的某些内存单元。
java的多线机制
java虚拟机快速的把控制从一个线程切换到另一个线程,这些线程将被轮流执行,使得每个线程都有机会使用CPU资源。
主线程
main线程主要负责执行main方法。在main方法的执行中在创建的线程,就被称作程序中的其他线程。JVM就要在主线程和其他线程之间轮流切换,保证每个线程都有机会使用CPU资源。线程的状态和生命周期
java语言使用Thread类及其子类的对象来表示线程。
-start()方法通知JVM,JVM就会知道有一个新的线程排队了。sleep(int millsecond)方法使当前线程进入休眠状态。
-run ()方法规定了该线程的具体使命。Thread类
- 创建线程的一个途径是用
Thread类直接创建线程对象。通常使用其构造方法。 使用
Runnable接口比使用Thread的子类更加的灵活。目标对象与线程对象的关系
- 目标对象与线程对象完全解耦
目标对象组合线程
线程同步
若干线程都使用一个
synchronized修饰的方法。多个线程调用synchronized修饰的方法必须遵守同步机制。线程联合
一个线程A在占用CPU的资源期间,可以让其他线程调用
join()方法和本线程联合。
教材学习中的问题和解决过程
问题一:在运行Example12_3的时候,每次运行的结果都不一致?

解决:这个问题还没有解决,但我个人认为是用
Thread类创建的猫,狗两个线程在使用CPU资源时是随机轮流交替,谁先得到资源是不确定的,所以会出现结果不一致的情况。
码云代码链接
- 本周代码
- Example12_1
- Example12_2
- Example12_3
- Example12_4
- Example12_5
- Example12_6
- Example12_7
- Example12_8
- Example12_9
-
脚本运行截图:


上周考试错题总结
- 属于数据操作语言的是:insert和update
- Statement的executeUpdate()方法会返回int值
- 异常情况正确的是: java.sql.SQLException:结果集已耗尽 (结果集用尽或未调用next);java.sql.SQLException: No suitable driver(URL拼写错误)
- 以下哪些是定义在ResultSet中用于Cursor定位的方法:
next()beforeFirst()afterLast()isBeforeFirst()relative(int)感悟
通过本周的学习,对线程有了一些了解,在给线程分配CPU资源时我们可以理解为不同状态之间的转换。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 31/31 | 1/1 | 20/20 | git的使用 |
| 第二周 | 373/404 | 2/3 | 18/38 | java基本数据语法 |
| 第三周 | 547/920 | 1/4 | 22/60 | 类与对象以及打包 |
| 第四周 | 919/1839 | 2/6 | 30/80 | 子类与继承,接口和面向接口编程 |
| 第五周 | 500/2300 | 3/9 | 20/ 100 | 输入输出流以及内部类 |
| 第六周 | 300/2600 | 1/10 | 25/125 | 泛型与集合框架,常用实用类 |
| 第七周 | 447/3047 | 3/13 | 25/150 | MySQL数据库与JDBC |
| 第八周 | 700/3826 | 3/16 | 25/175 | java的多线程机制 |
参考资料
20165235 祁瑛 2018-4 《Java程序设计》第八周学习总结的更多相关文章
- 20165235 祁瑛 2018-4 《Java程序设计》第九周学习总结
20165235 祁瑛 2018-4 <Java程序设计>第九周学习总结 教材学习内容总结 URL类 UR类是java.net包中的一个重要类,使用URL创建的对象的应用程序称作称作客户端 ...
- 20165235 祁瑛 2018-3 《Java程序设计》第四周学习总结
20165235 祁瑛 2018-3 <Java程序设计>第四周学习总结 教材学习内容总结 第五单云总结 (一)子类与继承1.java中子类只能有一个父类,在类名前用extends标记.2 ...
- 20165235 祁瑛 2018-4 《Java程序设计》第七周学习总结
20165235 祁瑛 2018-4 <Java程序设计>第七周学习总结 教材学习内容总结 MySQL数据管理系统 MySQL数据管理系统,简称MySQL,是世界上流行的数据管理系统. M ...
- 20165235 祁瑛 2018-4 《Java程序设计》第六周学习总结
20165235 祁瑛 2018-4 <Java程序设计>第六周学习总结 教材学习内容总结 常用实用类 (一)1.String类是final类型的,String类型常量也是对象.2.可以使 ...
- 20165235祁瑛 2018-3 《Java程序设计》第三周学习总结
20165235祁瑛 2018-3 <Java程序设计>第三周学习总结 教材学习内容总结 类与对象学习总结 类:java作为面向对象型语言具有三个特性:①封装性.②继承性.③多态性.jav ...
- 201521123027 <java程序设计>第八周学习总结
1.本周学习总结 1.1思维导图 2.书面作业 Q1.List中指定元素的删除(题目4-1) 1.1 实验总结 总结:判断List中是否存在指定元素,需要用到equals方法,若存在就用remove进 ...
- 2018-03-11 20165235祁瑛《Java程序设计》第二周学习总结
2018-03-11 20165235祁瑛<Java程序设计>第二周学习总结 教材学习内容总结 第二章要点: 在这一章中我学到了很多东西: (1)布尔类型boolean,布尔类型的赋值只能 ...
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
随机推荐
- python-迭代器、生成器、内置函数及面向过程编程
一.迭代器 迭代器是迭代取值的工具,迭代是一个重复的过程,每一次重复都是基于上一次的结果而来的. 为什么要用迭代器呢? 1.可以不依赖索引取值 2.同一时刻在内存中只有一个值,不会过多的占用内存 如何 ...
- centos6.5 有趣但是没有用的linux命令
小火车 get http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -ivh epel-rele ...
- js 对象的循环
var car = {type:"Fiat", model:500, color:"white"}; var arr = array(); for(i in c ...
- Swift 学习- 02 -- 基础部分2
class NamedShape{ var numberOfSides: Int = 0 var name: String init(name: String) { self.name = name ...
- Confluence 6 CSS 编辑快速入门
希望编辑空间的 CSS 样式表: 进入空间后,然后从边栏的底部选择 空间工具(Space tools) > 外观和感觉(Look and Feel) . 然后选择 样式表(Stylesheet) ...
- Flask框架(一)
Flask框架 Flask本身想当于一个内核,其自身几乎所有功能都依靠扩展(邮件扩展Flask-Mail.用户认证Flask-Login),都需要用第三方的扩展来实现.其WSGI工具箱采用Werkze ...
- matalb 产生信号源 AM调制解调 FM调制解调
%%%%%%%%%%%%%%%%%%%%%%%%%%% %AM调制解调系统 %%%%%%%%%%%%%%%%%%%%%%%%%%% clear; clf; close all Fs=800000;%采 ...
- 补充的flask实例化参数以及信号
一.实例化补充 instance_path和instance_relative_config是配合来用的.这两个参数是用来找配置文件的,当用app.config.from_pyfile('settin ...
- LeetCode(85):最大矩形
Hard! 题目描述: 给定一个仅包含 0 和 1 的二维二进制矩阵,找出只包含 1 的最大矩形,并返回其面积. 示例: 输入: [ ["1","0",&quo ...
- vue中 裁剪,预览,上传图片 的插件
参考地址: https://github.com/dai-siki/vue-image-crop-upload