sy08_3:捕获并处理各种类型的异常

本文通过一个具体的Java程序示例,展示了如何捕获并处理多种类型的异常,包括算术异常、空指针异常、数组越界异常及字符串索引越界异常。

捕获并处理各种类型的异常

1.编写ExceptionTest.java 程序文件,源代码如下。

package Myjava;

import java.io.*;
public class ExceptionTest{
       public static void main(String args[]) {
              for(int i = 0; i < 4;i++) {
                     int k;
                     try {
                           switch( i ) {
                                   case 0:        
                                          int zero = 0;
                                          k = 911 / zero;
                                          break;
                                   case 1:       
                                          int b[ ] = null;
                                          k = b[0];
                                          break;
                                   case 2:       
                                          int c[ ] = new int[2];
                                          k = c[9];
                                          break;
                                   case 3:       
                                          char ch = "abc".charAt(99);
                                          break;
                            }
                     }catch(Exception e) {
                            System.out.println("\nTestcase #" + i + "\n");
                            System.out.println(e);
                     }
              }
       }
}

2. 编译、运行

Testcase#0

 

java.lang.ArithmeticException: / by zero

 

Testcase#1

 

java.lang.NullPointerException

 

Testcase#2

 

java.lang.ArrayIndexOutOfBoundsException: 9

 

Testcase#3

 

java.lang.StringIndexOutOfBoundsException: String index out of range: 99


3.根据运行结果,请在实验报告中说明程序运行中总共捕捉了几个异常,并指出每个异常各自属于哪种类型的异常?

    4个异常。

java.lang.ArithmeticException

java.lang.NullPointerException

java.lang.ArrayIndexOutOfBoundsException

java.lang.StringIndexOutOfBoundsException



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值