集美大学 计算机 郑如滨

教学博客

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

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

1. 预习

简易预习流程:先看预习课件,认真完成里面的习题与调查。然后试着在电脑前完成课前问题列表中的3-5。注意:可根据需要观看线上课程视频。

1.1 学习目标

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

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。使得当输入错误时,可提示重新输入,直到输入正确后,才能继续往下执行。

  1. 将如下代码中NumberFormatException改成Exception可以吗?
    String x = "abc";
    try {
        int a = Integer.parseInt(x);
        System.out.println(a);
    } catch (NumberFormatException e) {
        e.printStackTrace();
    }
    
  2. 查询JDK文档,说说如下代码哪里抛出了什么异常?该异常意味着吗什么?需要捕获吗?为什么?
    String fileName = "abc";
    FileReader fileReader = new FileReader(fileName);
    

2.实验

  1. 实验链接:https://www.cnblogs.com/zhrb/p/6731114.html
    1. PTA编程:7.1 常见异常, 7.2 使用异常机制处理异常输入, 7.3 throw与throws。可选:日期类的基本使用。
    2. PTA函数:f7.1 多种类型异常的捕获
    • 课前提前完成7.1、7.2请实验课上课前联系老师检查加分
  2. 课上重点完成实验链接中的:
    • 1.5 为代码加上异常处理
    • 2.2 调试(实验任务书题目5)
    • 2.3 JUnit(实验任务书题目6)

3.课后任务(作业)

3.0 面向对象设计大作业自选题目展示(可选)

可演示如下两部分内容之一:

  1. 完整版、带GUI界面的“商城购物车系统”或“学生管理系统”。
  2. 上周自选的面向对象设计课题。主要包含:选题题目、前期调查(别人做的相关内容)、功能简介、技术选型、面向对象设计。

请在周四课前联系老师要求展示。

3.1 在线学习平台

  1. 视频
    7.4.2 throws关键字
    7.4.3 throw关键字
    7.5 不要滥用异常
    7.6 调试(可选)
  2. 讨论
    7.1.2 使用代码生成常见异常
    **7.2 思考:异常处理机制
    **7.3 思考:识别异常类型
    7.4.2 练一练:try...catch...finally综合练习
    **7.4.4 思考:throw与throws的使用
    **7.5 思考:不要滥用异常
  3. 章节测验
    限时完成:章节测验6(集合框架)

3.2 PTA编程(重要)

完成题集Java-07-异常处理中的:

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

拓展

课外阅读:AI大模型相关资料,掌握使用良好的Prompt生成高质量内容。

posted on 2025-11-04 09:00  zhrb  阅读(5)  评论(0)    收藏  举报