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资源时是随机轮流交替,谁先得到资源是不确定的,所以会出现结果不一致的情况。

码云代码链接

上周考试错题总结

  1. 属于数据操作语言的是:insert和update
  2. Statement的executeUpdate()方法会返回int值
  3. 异常情况正确的是: java.sql.SQLException:结果集已耗尽 (结果集用尽或未调用next);java.sql.SQLException: No suitable driver(URL拼写错误)
  4. 以下哪些是定义在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程序设计》第八周学习总结的更多相关文章

  1. 20165235 祁瑛 2018-4 《Java程序设计》第九周学习总结

    20165235 祁瑛 2018-4 <Java程序设计>第九周学习总结 教材学习内容总结 URL类 UR类是java.net包中的一个重要类,使用URL创建的对象的应用程序称作称作客户端 ...

  2. 20165235 祁瑛 2018-3 《Java程序设计》第四周学习总结

    20165235 祁瑛 2018-3 <Java程序设计>第四周学习总结 教材学习内容总结 第五单云总结 (一)子类与继承1.java中子类只能有一个父类,在类名前用extends标记.2 ...

  3. 20165235 祁瑛 2018-4 《Java程序设计》第七周学习总结

    20165235 祁瑛 2018-4 <Java程序设计>第七周学习总结 教材学习内容总结 MySQL数据管理系统 MySQL数据管理系统,简称MySQL,是世界上流行的数据管理系统. M ...

  4. 20165235 祁瑛 2018-4 《Java程序设计》第六周学习总结

    20165235 祁瑛 2018-4 <Java程序设计>第六周学习总结 教材学习内容总结 常用实用类 (一)1.String类是final类型的,String类型常量也是对象.2.可以使 ...

  5. 20165235祁瑛 2018-3 《Java程序设计》第三周学习总结

    20165235祁瑛 2018-3 <Java程序设计>第三周学习总结 教材学习内容总结 类与对象学习总结 类:java作为面向对象型语言具有三个特性:①封装性.②继承性.③多态性.jav ...

  6. 201521123027 <java程序设计>第八周学习总结

    1.本周学习总结 1.1思维导图 2.书面作业 Q1.List中指定元素的删除(题目4-1) 1.1 实验总结 总结:判断List中是否存在指定元素,需要用到equals方法,若存在就用remove进 ...

  7. 2018-03-11 20165235祁瑛《Java程序设计》第二周学习总结

    2018-03-11 20165235祁瑛<Java程序设计>第二周学习总结 教材学习内容总结 第二章要点: 在这一章中我学到了很多东西: (1)布尔类型boolean,布尔类型的赋值只能 ...

  8. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  9. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

随机推荐

  1. oracle 定时 job

    最近在工作中遇到了要在oracle里面创建一个定时job,从远程数据库里面定时把某张表里面的数据更新到本地服务器上某个表里,具体操作: 1.在自己数据库里面先创建一张表test create tabl ...

  2. python-基于UDP通信的套接字,socketserver模块的使用

    一.基于UDP协议通信的套接字 udp是没有链接的,所以先启动哪一端都不会报错 import socket server=socket.socket(socket.AF_INET,socket.SOC ...

  3. Ubuntu16.04安装Maven3.5.4

      本篇教程在示例步骤中使用了以下版本的软件.操作时,请您以实际软件版本为准. 操作系统:Ubuntu 16.04.3 LTS Maven 版本:Apache Maven 3.5.4 JDK 版本:J ...

  4. Confluence 6 Windows 中以服务方式自动重启的原因

    针对长时间使用的 Confluence,我们推荐你配置 Confluence 自动随操作系统重启而启动.针对一些 Windows 的服务器,这意味着需要让 Confluence 以服务的方式运行. 有 ...

  5. 其他 Confluence 6 的 cookies 和备注

    其他 Confluence 的 cookies 针对 Confluence 的功能,我们还使用了其他的一些 cookies 来存储基本的 产品持久性(product presentation).Con ...

  6. Confluence 6 数据库 JDBC 驱动

    本页面提供了支持的数据库的所有 JDBC 驱动下载链接. 基于许可证的原因,我们没有将 MySQL 或 Oracle 的数据库驱动整合到 Confluence 中,因此你需要在 Confluence ...

  7. Flex布局新旧混合写法详解

    flex是个非常好用的属性,如果说有什么可以完全代替 float 和 position ,那么肯定是非它莫属了(虽然现在还有很多不支持 flex 的浏览器).然而国内很多浏览器对 Flex 的支持都不 ...

  8. ssd.pytorch

    https://towardsdatascience.com/learning-note-single-shot-multibox-detector-with-pytorch-part-1-38185 ...

  9. centos7查看yum安装的软件及路径

    rpm -qa 查看所有已安装软件名称 rpm -ql 软件名 显示软件的安装路径

  10. bzoj 1856

    做这题之前先看道高考真题(好像是真题,我记不清了) 例:已知一个由n个0和n个1排列而成的数列,要求对于任意k∈N*且k∈[1,2n],在前k个数中1的个数不少于0的个数,求当n=4时这样的数列的数量 ...