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. U盘权限不足,只读文件系统

    https://blog.csdn.net/baocheng_521/article/details/77161791 用第一种方式成功

  2. js模块化编程之CommonJS和AMD/CMD

    js模块化编程commonjs.AMD/CMD与ES6模块规范 一.CommonJS commonjs的require是运行时同步加载,es6的import是静态分析,是在编译时而不是在代码运行时.C ...

  3. 初识dubbo

    1. 为什么需要 Dubbo(摘自http://dubbo.apache.org/zh-cn/docs/user/quick-start.html) 随着互联网的发展,网站应用的规模不断扩大,常规的垂 ...

  4. Python基础之面向对象进阶一

    一.isinstance(obj,cls)和issubclass(sub,super) 1.isinstance(obj,cls)检查obj是否是类 cls 的对象 class A: pass obj ...

  5. java URI

    URI是对URL的抽象,不仅包括统一资源定位符,还包括统一资源名,在java中URI用java.net.URI类表示,这个类与java.net.URL类的区别表现在: URI类完全有关于资源的标识和U ...

  6. java 接口实现的概念整理

    1.在java语言中接口由类实现,以便使用接口中的方法,重写接口中的方法,实现接口的类必须重写接口中的所有类,由于接口中的方法一定是 public abstract方法,所以类重写接口中的方法不仅要去 ...

  7. mybatis的插件分析

    mybatis插件回在解析配置是通过pluginAll方法将插件添加到插件链中,然后会在sqlSessionfactory.openSession()方法中将插件链绑到executor上,在执行sql ...

  8. MyEclipes相关配置

    0. MyEclipes10 相关下载资源(私人珍藏版) 链接:http://pan.baidu.com/s/1eSIdObS密码:0cjy 1. myEclipes连接Tomcat http://w ...

  9. Left-pad

    L1-032 Left-pad (20 分)   根据新浪微博上的消息,有一位开发者不满NPM(Node Package Manager)的做法,收回了自己的开源代码,其中包括一个叫left-pad的 ...

  10. linux 系统备份和恢复

    Linux不像windows,它不限制根用户存取任何东西,因此,你完全可以把一个分区上每一个的文件放入一个TAR文件中. 使用root用户切换到根目录 然后,使用下面的命令备份完整的系统: tar c ...