大数据DAY21——IO流(异常)

本文详细介绍了Java中的异常处理,包括异常概述、异常分类、编译时异常与运行时异常的区别、异常处理机制如try-catch-finally、throws和throw的使用。还特别讲解了JVM的默认异常处理方案以及如何选择处理异常的方法。通过对异常的深入理解,有助于提升Java编程中的错误处理能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

异常

异常概述

异常分类

编译时异常和运行时异常的区别

异常案例

JVM的默认处理方案:

异常处理:try…catch…finally方法

try...catch...finally处理方式:

变形格式:

处理多个异常

JDK7后出现的多个异常方法:

Throwable中的方法

throws处理异常

throws案例

throw处理异常

throws和throw的区别

throws

throw

如何去选择处理异常的方法

finally的特点作用

finally的特点

finally的作用

异常注意事项


异常

异常概述

异常:异常就是Java程序在运行过程中出现的错误。

异常由来:问题也是现实生活中一个具体事务,也可以通过java 的类的形式进行描述,并封装成对象。其实就是Java对不正常情况进行描述后的对象体现。

如,数组下标越界异常,空指针异常

异常分类

A.严重问题:Error是严重的问题,我们不处理,如内存溢出(OOM)

B.问题:Exception(异常)

编译时异常和运行时异常的区别

1.编译时期异常:除了RuntimeException都是编译时期异常,必须处理,不然无法通过编译运行。

2.运行时期异常:RuntimeException类及其子类,一般情况下,不会对问题本身处理,因为问题是在写代码的过程中由于逻辑不严谨导致的。

异常案例

例:除数为0

public class ExceptionTest1 {
    public static void main(String[] args) {
        int a=120;
        int b=0;
        System.out.println(a/b); //除数不能为0
        System.out.println(a);
    }
}

因为0不能作为除数,所以a/b会报错,也就是异常,后面的代码也不会继续执行

 

 如果我们不做出任何处理,JVM会默认处理

JVM的默认处理方案:

把异常的名称,错误原因及异常出现的位置等信息输出在了控制台 ,程序停止执行

异常处理:try…catch…finally方法

try...catch...finally处理方式:

try{

可能出现问题的代码

}catch(异常名  变量名){

针对出现问题后的处理代码

}finally{

只要是程序顺利执行,finally里面的内容无论如何都会执行

}

变形格式:

try{

可能出现问题的代码

}catch(异常名  变量名){

针对出现问题后的处理代码

}

继续0不能作为除数的例子

public class ExceptionTest1 {
    public static void main(String[] args) {
        int a=120;
        int b=0;
        try{
            System.out.println(a/b);
        }catch (ArithmeticException o){
            System.out.println("除数为0");
        }
        System.out.println(a);
    }
}

 经过

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值