day050:try...catch...常见问题、throwable的成员方法、自定义异常

55 篇文章 0 订阅
2 篇文章 0 订阅

接上节:​​​​​​day049:异常、throws声明异常、throw抛出异常、异常的处理方式_ZQyyds:)的博客-CSDN博客

一、try...catch...常见问题

1.常见问题:

  • 当try中没有遇到异常,会怎么执行?
    • 会把try中的代码全部执行,不会执行catch中的代码
  • 当try中遇到异常,会怎么执行?
    • try中遇到异常后,直接运行catch中的代码
  • 如果异常没有被捕获,程序会如何运行?
    • 异常没有被捕获时,try...catch...就相当于没有写,由JVM虚拟机默认处理异常
  • 同时出现多个异常时,会怎么处理?
    • 出现多个异常,可以写多个catch;如果多个异常之间存在子父类关系,则父类一定要写在下面(Exception范围最大,其余的空指针异常、数组索引越界异常等都为子类)

二、throwable的成员方法

1.异常里常见的成员方法:

  • public String getMessage()        返回此异常的详细信息字符串
  • public String toString()        返回此异常抛出的简短描述
  • public void printStackTrace()       把异常的错误信息输出在控制台上

代码示例:

第一个:getMessage:
  

public static void main(String[] args) {
        try {
            int[] arr = {1, 2, 3, 4, 5, 6};
            System.out.println(arr[10]);
        } catch (ArrayIndexOutOfBoundsException e) {
            String message = e.getMessage();
            System.out.println(message);
            //输出:Index 10 out of bounds for length 6
        }
    }
第二个:toString

public class exceDemo_04 {
    public static void main(String[] args) {
        try {
            int[] arr = {1, 2, 3, 4, 5, 6};
            System.out.println(arr[10]);
        } catch (ArrayIndexOutOfBoundsException e) {
            String s = e.toString();
            System.out.println(s);
            //输出:java.lang.ArrayIndexOutOfBoundsException: Index 10 out of bounds for length 6
        }
    }
}
第三个:printStackTrace


public class exceDemo_04 {
    public static void main(String[] args) {
        try {
            int[] arr = {1, 2, 3, 4, 5, 6};
            System.out.println(arr[10]);
        } catch (ArrayIndexOutOfBoundsException e) {
            e.printStackTrace();
            //输出:java.lang.ArrayIndexOutOfBoundsException: Index 10 out of bounds for length 6
            //	at com.itheima.exception.exceDemo_04.main(exceDemo_04.java:11)
        }
    }
}

三、自定义异常

1.自定义异常的目的:让异常信息更加清晰,见名知意。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZQyyds:)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值