第10周 预习、实验与作业:异常处理机制

郑老师 老师 2022-10-25 07:42:25
加精

目录

  • 1. 预习
  • 1.1 学习目标
  • 1.2 预习任务
  • 1.3 课前问题列表
  • 2.实验
  • 3.作业
  • 3.0 面向对象设计大作业第二阶段-自选题目
  • 3.1 视频
  • 3.2 章节测验与讨论

1. 预习

简易预习流程:先看预习课件,认真完成里面的习题。然后根据需要观看视频。最后尝试完成课前问题列表

请将课前问题列表以完成任务的方式完成!默认5分。

1.1 学习目标

  1. 了解异常继承架构,学会异常处理机制的关键字Exception、throw、try-catch-finally、throws.
  2. 能针对不同类型的异常(checked、unchecked)选择合适的处理式并做出应对(捕获或者声明抛出), 能根据需求选择已有的异常类或定制异常类。
  3. 能体会到异常处理机制是提高程序健壮性的一种重要方式。

1.2 预习任务

  1. 预习课件(两份)
  2. 观看视频:7.1 程序错误与异常、7.1.2 异常对象,7.2 异常处理机制,7.3 异常继承层次,7.4.1 try...catch...finally子句

1.3 课前问题列表

  1. 说出两个我们在使用软件、APP时遇到的错误。这些错误可能是什么类型的错误?你是怎么解决这类错误呢(重启、查看日志...)?
  2. 说出两个你在编写Java程序时最常遇到的错误。并判定这些错误是什么类型的错误(编译错误、运行时错误)。你认为哪种类型的错误更好解决呢?
  3. 查询JDK文档,说说如下代码哪行抛出了什么类型的异常?为什么该段程序明明可能产生错误,但是不写try...catch,也可编译通过。
    public static void main(String[] args) {
     int[] x = new int[3];
     Scanner inputScan = new Scanner(System.in);
     for(int i = 0; i < x.length;){
         System.out.println("Please input the "+i+" integer:");
         String inputInt = inputScan.nextLine();  
         x[i] = Integer.parseInt(inputInt);  //注意这里!
         i++;
     }
     System.out.println(Arrays.toString(x));
    }
    
    为上述代码添加try...catch。使得当输入错误时,可提示重新输入,直到输入正确后,才能继续往下执行。
  4. 将如下代码中NumberFormatException改成Exception可以吗?
    String x = "abc";
    try {
     int a = Integer.parseInt(x);
     System.out.println(a);
    } catch (NumberFormatException e) {
     e.printStackTrace();
    }
    
  5. 查询JDK文档,说说如下代码哪里抛出了什么异常?该异常意味着吗什么?需要捕获吗?为什么?
    String fileName = "abc";
    FileReader fileReader = new FileReader(fileName);
    

2.实验

实验链接:https://www.cnblogs.com/zhrb/p/6731114.html

PTA编程:7.1 常见异常, 7.2 使用异常机制处理异常输入, 7.3 throw与throws。可选:日期类的基本使用。
PTA函数:f7.1 多种类型异常的捕获

课上重点完成 实验连接中的:
1.5 为代码加上异常处理
2.2 调试(实验任务书题目5)
2.3 JUnit(实验任务书题目6)

提前完成7.1、7.2请联系老师加分

课后自行完成
7.4 自定义异常(综合)、可选:7.5 日期类的基本使用
f7.2 finally、f7.3 ArrayIntegerStack异常改进版

3.作业

3.0 面向对象设计大作业第二阶段-自选题目

对一个新问题进行面向对象设计。完成后需提交。具体要求和可选题目请见:
面向对象设计大作业迭代任务中的"面向对象大作业-自主选题"下的面向对象大作业(自主选题)-第一次提交

3.1 视频

7.4.2 throws关键字
7.4.3 throw关键字
7.5 不要滥用异常
7.6 调试(可选)

3.2 章节测验与讨论

“异常处理”章节测验。将计入线上成绩,请谨慎开始。

在线课程讨论
7.1.2 使用代码生成常见异常
7.2 思考:异常处理机制
7.3 思考:识别异常类型
7.4.1.2 练一练:try...catch...finally综合练习
7.4.3 思考:throw与throws的使用
7.5 思考:不要滥用异常

...全文
1010 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
0人已提交
完成率0%
暂无数据
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
左仁菊 网络21级 2022-10-31
  • 打赏
  • 举报
回复

4,006

社区成员

发帖
与我相关
我的任务
社区描述
为初学Java的大学生提供一个学习、交流的社区。 社区包括:技术文章、学习任务、在线课程、在线编程练习。
javajava-eeeclipse 高校
社区管理员
  • zhrb
  • 驼同学.
  • 兰翔呀
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

社区板块说明:
1. Java技术:包含Java技术的各种新闻、文章。
2. 教学频道:包含Java基础技术与Java教学中常用的一些文章。建议初学者、在线学习的同学在这里交流、提问、浏览课程学习相关文章。
3. 学习任务:老师发布的教学任务。
4. 其他技术:其他技术文章。

社区链接说明:
1. 在线学习:本社区对应的在线课程(免费学习)。
2. 编程练习:本社区使用的在线编程练习平台(加入在线课程后,免费练习)。
3. 项目实例:一个简单的Java项目示例。
 

试试用AI创作助手写篇文章吧