1. 本周学习总结

1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容。

2. 书面作业

1.finally 题目4-2

1.1 截图你的提交结果(出现学号)

1.2 4-2中finally中捕获异常需要注意什么?

在finally中对于捕获异常需要单独处理,我们需要把resource.close()放在try语句中。并且在finally中的异常要在finally中捕获,不要在外层捕获。

2.用异常改进ArrayIntegerStack 题目4-3

2.1 截图你的提交结果(出现学号)

2.2 实验总结

这个题目已经做过好几次了,只需要在原来的方法上做修改,在push()方法,pop()方法,peek()方法中需要先抛出(throws)他们自己会出现的异常。然后在遇到会出现异常的条件时抛出异常(throw new 异常)。

3.自定义异常 题目5-4

4.1 截图你的提交结果(出现学号)

4.2 自定义异常有哪几个关键点?

1.需要在该异常中告诉别人发生异常的原因。 2.说明该异常类型,check or uncheck。 3.尽量使用jdk已经有的类,便于理解 4.需要继承已有异常,如Exception,Threads。

4.读取文件并组装对象

实验任务书中中的题目3:读取文件并组装对象

给出关键代码(需出现你的学号)







5.学会使用Eclipse进行调试 观看相关调试视频

5.1 简述使用Eclipse进行调试需要几步?

1.根据错误提示信息,确定错误类型; 2.缩小错误发生范围,确定错误发生点; 3.设置断点; 4.启动调试 5.查看状态值

5.2 调试时F5, F6, F7快键键各有什么不同?什么情况该使用哪个快捷键?

1.F5(step into):跳进某个函数内; 2.F6(step over):跳过某个函数,不进入; 3.F7(step return):跳出某个函数; - 当需要调试函数内部代码,需要使用F5快捷键进入函数内部; - 需要一步一步调试就使用F6快捷键; - 需要跳出函数就使用F7快捷键。

5.3 除了Eclipse的调试器,你还使用什么方法调试程序?

还可以使用Sysout.out.println();语句进行调试,可以更加清楚变量的值以及运行的过程。

6.题集多线程

6.1 程序填空3-1、3-2。(截图提交结果,出现你的学号)

6.2 函数4-1(Thread)、4-2(Runnable)(截图提交结果,出现你的学号)



6.3 函数4-3(Runnable与匿名内部类)(截图提交结果,出现你的学号),并使用Labmda表达式改写。

6.4 实验总结

3.1: 要求主线程退出时,在main方法中所启动的线程也要自动结束,需要设置t1为守护线程。 3-2:调用join()方法,直到目标线程t1结束才恢复; 4-1:此题考察Thread类的创建,重写run()方法,循环输出0到n-1; 4-2:需要通过捕获异常来使进程结束,使用sleep方法抛出异常,使线程结束。

7.源代码阅读:多线程程序BounceThread

7.1 哪个类是支持多线程的类,它实现了什么接口。这个类做了些什么?

BallRunnable是支持多线程的类,他实现了Runnable接口。这个类就是调用小球移动的函数,移动小球的位置,然后再画出来,实现了小球的移动效果。

7.2 Ball.java这个程序只做了两件事,这两件事分别是什么?

1.getShape()实现了构造大小为15x15的小球,同时从位置(0,0)开始出发; 2.move()获得小球位置。

7.3 BallComponent也只做了两件事,这两件事分别是什么?

添加一个小球,将小球画出来。

7.4 BounceThread中,什么时候启动了新线程?

在运行界面点击相应的开始按钮按钮,程序调用addBall()方法完成添加小球的操作,之后启动了新线程。

7.5 这个程序是如何实现?一个大致的执行流程是什么?

1.建立一个图形界面 2.每点击一次按钮就出现一个小球 3.小球移动 4.移动到一定位置停止

8.购物车系统中的多线程

8.1 购物车系统中可能存在哪些多线程问题?

1.多个用户同时购买同一件商品的时候会产生多线程的问题,需要解决先后顺序的购买。 2.如果多个用户对数量有限的商品进行购买,有可能会出现货物不足的问题,这时就是先到先得.

  1. 码云上代码提交记录

题目集:异常、多线程(3-1, 3-2, 4-1, 4-2, 4-3)

3.1. 码云代码提交记录

java第十周学习总结的更多相关文章

  1. Java 第十周学习总结

    20145113<Java程序设计>第十周学习总结 基础知识 1.网络通讯的方式主要有两种 TCP(传输控制协议)方式:需要建立专用的虚拟连接以及确认传输是否正确 UDP(用户数据报协议) ...

  2. 201521123093 java 第十周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. Runnable不是线程,Thread才是,必须将实现Runnable接口的类的对象放入Thread中才能在 ...

  3. 201521123024 java 第十周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 2. 书面作业 本次PTA作业题集异常.多线程 finally 题目4-2 1.1 截图你的提交结果(出现学 ...

  4. 201521044091 java 第十周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. Runnable不是线程,Thread才是,必须将实现Runnable接口的类的对象放入Thread中才能在 ...

  5. 20145213《Java程序设计》第十周学习总结

    20145213<Java程序设计>第十周学习总结 教材学习总结 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接 ...

  6. 21045308刘昊阳 《Java程序设计》第十周学习总结

    21045308刘昊阳 <Java程序设计>第十周学习总结 教材学习内容总结 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据. 狭义的网络编程范畴:程序员所作的事情 ...

  7. 《Java程序设计》第十周学习总结

    20145224 <Java程序设计>第十周学习总结 网络编程 ·网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定的 ...

  8. 20145236 《Java程序设计》 第十周学习总结

    20145236 <Java程序设计> 第十周学习总结 Java网络编程 Java网络编程技术 Java语言是在网络环境下诞生的,所以Java语言虽然不能说是对于网络编程的支持最好的语言, ...

  9. 201521123061 《Java程序设计》第十周学习总结

    201521123061 <Java程序设计>第十周学习总结 1. 本周学习总结 1.这周异常方面的知识主要是关于自定义异常,自定义的异常可以继承自Throwable或Exception类 ...

随机推荐

  1. iOS之UIWebView无法获取web标题

    最近遇到了一个问题,就是在UIWebView的代理方法里,执行document.title的js代码无法获取网页标题,代码如下: - (void)webViewDidFinishLoad:(UIWeb ...

  2. PHP数组的基本操作及遍历数组的经典操作

    <?php 索引数组//数组第一种定义 $arr = array(1,2,3);var_dump($arr); //数组第二种定义$arr = [1,2,3];var_dump($arr); / ...

  3. 利用pyinotify监控文件内容,像tailf命令但比它更强

    Linux的tail/tailf命令使用了内核提供的inotify功能,下面的Python例子也使用inotify实现比tail/tailf更强的监控文件功能. watchfile.py #!/usr ...

  4. DataTableToList

    很简单的转换功能,这是我在GitHub上复制的一段代码(懒得再去找原地址了),感觉功能还算可以,贴出来分享给大家 /// <summary> /// DataTable to List c ...

  5. 重拾java中的 i++ 和 ++i

    java中的 i++ 和 ++i 首先记着要点: 1.i++是先取值再运算. 2.++i是先运算后取值. 举个栗子: int y,x=3;y=(++x)+(++x); 则y=? 分析:先运算后取值,先 ...

  6. Java中的注释-快捷键

    Eclipse中的快捷键  单行注释   Ctrl+/ 多行注释    Ctrl+Shift+/  文档注释    Shift +Alt+j /** * @author Lenovo * 文档注释 * ...

  7. static和final修饰方法

    static修饰的方法是静态方法,所有的对象共用一份,也就是共享方法.static方法是可以被继承,然后可以被重写和重载. final修饰的方法是不可变方法,final方法所在类被继承时,被final ...

  8. d3.js多个x轴y轴canvas柱状图

    最终效果图镇楼: 本文通过三个步骤来介绍d3.js. 1.简单的柱状图: 2.多个x轴的柱状图: 3.多个x轴.y轴的柱状图: 学习心得: d3.js入门相对比较困难,一旦掌握了核心思想,不断熟悉AP ...

  9. 自动化测试:behave

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  10. vue2

    props 向子组件传递数据是经常会用到的,一般是在子组件定义 props 来接受数据,当父组件改变数据时子组件的数据也会进行更新.但这里是有一个坑的,先看代码: <pagination :pa ...