Java异常

Throwable是java中所有错误和异常的超类,error没办法解决,可能会是硬件的问题,我们需要解决的是异常,RuntimeException是java虚拟机正常操作期间可以抛出的超类,RuntimeException系列的异常是需要回到代码中修改代码的,非RuntimeException是在我编译代码时候就必须修改的,否则无法通过编译

 

异常处理纸try...catch
如果程序出现异常需要自己来处理,有两种方案,一种try...catch,一种是throws

System.out.println(arr[3]);下标越界所以应该报ArrayIndexOutOfBoundsException的错,但是有catch(ArrayIndexOutOfBoundsExceptio e)所以会运行catch的代码,如果没有catch的时候代码会中断遇到错误,但是由于有catch(ArrayIndexOutOfBoundsExceptio e)他不会中端,即使中间出错也会给下继续执行输出结束,他是在System.out.println(arr[3]);出ArrayIndexOutOfBoundsExceptio 错,然后new一个ArrayIndexOutOfBoundsExceptio,在catch找到了就运行catch了.........e是一个对象,他有很多的方法

Throwable的成员方法

Throwable方法的演示
 1:getMessage():输出异常的原因
 
 底层实现:在Throwable中有一个
public String getMessage() {
    return detailMessage;
}
而detailMessage本身是一个成员变量,只不过被构造赋值,例如:
private String detailMessage;
public Throwable(String message){
    detailMessage = message;
}
2:toString:包含getMessage的内容而且也有错误的名字:java.lang.ArrayIndexOutOfBoundsException: 3
3: printStackTrace
是最全的,包括前两个而且还有内置信息


编译时异常出现红线,需要用try...catch,如果不用就报红线,说明有可能出现异常,所以需要加上try..catch,

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值