Java基础----异常

异常

Exception类或是其子类

throw new inputMismatchException(); 数据格式不匹配

ArithmeticException 算数异常(/ by zero)

NullPointerException 空指针异常

运行时异常不一定要处理

Scanner in = new Scanner(System.in);

in num1=0;

if (in.hasNexint()/*判断输入的是不是一个整数返回的是布尔类型*/){

num1=in.nextInt();

}
System.err.println("输入错误");/*对错误提示输出*/


在这里插入图片描述

异常处理机制

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

package Exception1;

import java.util.InputMismatchException;
import java.util.Scanner;

public class Exception1 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        try {
            //可能发生异常的代码
            System.out.println("请输入除数:");
            int num1 = in.nextInt();
            System.out.println("请输入被除数");
            int num2 = in.nextInt();
            System.out.println(num1 + "/" + num2 + "=" + num1 / num2);
        }
        catch (InputMismatchException ex/*捕捉异常对象*/) {
//异常代码处理
            System.out.println("数据格式不匹配");
            ex.printStackTrace();
            System.out.println(ex.getMessage()/*异常信息提示*/);
return;
        }
        catch (ArithmeticException ex/*捕捉异常对象*/) {
//异常代码处理
           System.out.println("算数异常");
            ex.printStackTrace();
            System.out.println(ex.getMessage()/*异常信息提示*/);
System.exit(1);
        }


        catch (Exception ex/*捕捉异常对象*/) {
//异常代码处理
            ex.printStackTrace();
            System.out.println(ex.getMessage()/*异常信息提示*/);

        }
        finally {
            System.out.println("程序完成");
        }
    }
}

Catch(多重)

可以捕捉多种类型

按顺序(先子类,后父类)

常见的异常类型

在这里插入图片描述

在这里插入图片描述

finally(不管怎样都执行,只有一种情况catch中System.exit(1);终止程序

在这里插入图片描述

catch中的return,遇到return先执行finally在返回到return

异常声明

在这里插入图片描述

throws

声明方法可能抛出的异常

跟在方法后面写

可声明抛出多个异常,异常之间用逗号隔开

抛出异常

throw程序员手动抛出异常

在这里插入图片描述

自定义异常

在这里插入图片描述

Exceptin:本身自带构造方法

package Exception1;
/**
 *自定义的:性别赋值不正确时爆发该异常
 **/
public class SexException extends Exception {
    public SexException(String message){
        super(message);
    }
}

在这里插入图片描述

在这里插入图片描述

FileNotFoundException

IOException

检查时异常一定要处理(报红线时)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

whc15059539669

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

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

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

打赏作者

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

抵扣说明:

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

余额充值