首页 > 代码库 > 201521123087《Java程序设计》第10周学习总结

201521123087《Java程序设计》第10周学习总结

1. 本周学习总结

技术分享

 

2. 书面作业

本次PTA作业题集异常多线程

  1. finally
    题目4-2
    1.1 截图你的提交结果(出现学号)
    1.2 4-2中finally中捕获异常需要注意什么?                                                                                                                                                                                                       

  2. 用异常改进ArrayIntegerStack
    题目4-3
    2.1 截图你的提交结果(出现学号)
    2.2 实验总结

  3. 自定义异常
    题目5-4
    4.1 截图你的提交结果(出现学号)
    4.2 自定义异常有哪几个关键点?

  4. 读取文件并组装对象
    实验任务书中中的题目3:读取文件并组装对象
    给出关键代码(需出现你的学号)

  5. 学会使用Eclipse进行调试
    观看相关调试视频
    5.1 简述使用Eclipse进行调试需要几步?                                                                                                                                                                                                           答:①在正确的地方设置断点

          ②启动调试模式

          ③Eclipse有一个专门的debug perspective,专门用于调试

          ④查看状态值

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

    F5-->step into(跳入):函数就进入并且继续单步执行

    F6-->step over(跳过继续运行):该命令的功能是单步执行代码,如果遇到函数则跳过函数,即把函数当做一条语句来对待

    F7 -->step return(跳出):单步执行到子函数内时,用step return就可以执行完子函数余下部分,并返回到上一层函数。
    总结:想要单步调试进入函数内部使用F5;想要
    单步调试不进入函数内部使用F6;想要由函数内部返回到调用处使用F7。


    5.3 除了Eclipse的调试器,你还使用什么方法调试程序?
    答:使用System.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 实验总结

  7. 源代码阅读:多线程程序BounceThread
    7.1 哪个类是支持多线程的类,它实现了什么接口。这个类做了些什么?                                                                                                                                                                   答:BallRunnable类,实现了Runnable接口,这个类,移动小球的位置,然后再画出来,实现了小球的移动效果。
    7.2 Ball.java这个程序只做了两件事,这两件事分别是什么?                                                                                                                                                                               答:move()获得小球移动后的位置,getShape()生成小球。
    7.3 BallComponent也只做了两件事,这两件事分别是什么?                                                                                                                                                                               答:add(Ball b)添加小球,paintComponent(Graphics g)画出所有添加的小球。
    7.4 BounceThread中,什么时候启动了新线程?                                                                                                                                                                                               答:添加一个新的小球的时候,启动一个新的线程。
    7.5 这个程序是如何实现?一个大致的执行流程是什么?                                                                                                                                                                                       答:建立一个Jframe,使用组件让小球能够显示出来,点击start,加入小球(不断的点击start,不断的加入小球),程序通过不断的改变小球的位置再画出来达到一个运动的效果,当小球运动到特定的位置时,便停下来了。

  8. 购物车系统中的多线程
    8.1 购物车系统中可能存在哪些多线程问题?                                                                                                                                                                                                       答:每个用户都是一个线程,如果多个用户对数量有限的商品进行购买,有可能会出现货物不足的问题,这时就是先到先得。 

3. 码云上代码提交记录

3.1. 码云代码提交记录

    • 技术分享

       

201521123087《Java程序设计》第10周学习总结