检查异常与非检查异常


import java.io.IOException;

/**
 * 对于检查异常,必须处理,否则代码标红都编译不了。处理方式:继续抛出,用try..catch捕获。
 * 对于非检查异常,可以编译通过,这是因为编译器认为可以人为避免,但是运行时程序中抛出错误的话,代码运行时就报错了,处理方式包括:捕获、继续抛出、不处理
 *
 * 检查异常(checked exception)特点:
 * 非检查异常(unchecked exception)特点:
 *
 * 哪些是检查异常(checked exception):除了RuntimeException,都是非检查
 * 哪些是非检查异常(unchecked exception):实现RuntimeException的都是非检查,所以非检查异常也叫运行时异常
 */
public class Test1 {
    // ArithmeticException extends RuntimeException extends Exception ,继承的是运行时异常,它属于非检查异常
    public static void doSomthing() throws ArithmeticException{
        System.out.println("doSomething");
    }

    // IOException extends Exception extends Throwable, 他属于检查异常
    public static void doSomthingIo() throws IOException {
        System.out.println("doSomething");
    }

    public static void main(String[] args) {
        // 可以编译通过
        // doSomthing();
        // 直接标红,编译不通过
        doSomthingIo();
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值