异常处理

1 异常处理

1.1 什么是异常?

对于程序执行时出现的意外情况,在Java语言中被称为异常(Exception)。

出现异常时进行的相关处理则称为异常处理。

Java语言中使用一些专门的类来描述不同的异常情况,这些专门的类称为异常类。所有异常的类组成了Java语言的异常类继承树体系。

常见的异常类:

Exception  异常继承树的根类

RuntimeException  运行时异常类

ArithmeticExcetion   算数错误异常(除数为0

IllegalArgumentException  方法接收到非法参数异常

NullPointerException  空引用异常

ArrayIndexOutOfBoundException  数组访问越界异常

ClassNotFoundException  不能加载所需的类异常

NumberFormatException  数值转化格式异常(如字符串转float类型)

IOException  I/O异常的根类

EOFException 文件结束异常

InterruptedException 线程终端异常

1.2 Java异常处理的机制

1.2.1 异常处理

异常处理时Java语言中的一种机制,是Java语法的一个特色功能,通过欠当的使用该机制,可以使得Java语言编写的项目更加稳定。

Java程序在执行过程中如果出现异常,会自动实例化异常类对象,该异常对象将被自动提交给JVM,当JVM 接收到对象时,会寻找能处理这一异常的代码,并把当前异常对象交给其处理,这一过程称为捕获异常。如果JVM找不到可以捕获异常的代码,则Java程序将异常退出。

1.2.2 捕获异常

Java中使用trycatch关键字捕获异常,格式如下:

try{

//代码块(可能出现异常的代码)

}catch(异常类型1 exception{

//对异常进行处理的代码块

}catch(异常类型2 exception{

//对异常进行处理的代码块

}catch(异常类型3 exception{

//对异常进行处理的代码块

}finally{

//无论是否有异常,始终都会被执行的代码块

}

异常如果不被捕获,就会传递到调用它的方法,如果一直不被捕获就会传递到main函数里,由JVM处理。

1.2.3 抛出异常

Java是使用throw关键字和throws关键字抛出异常,throw关键字用于代码中抛出异常,常用的格式:

throw new 异常类();

thwows用于在方法中抛出的有所异常,而他本身布捕获这些异常。这些异常将被抛给方法的调用者。调用者需要在方法中捕获异常,如果不捕获则必须在方法中使用thows继续将异常抛出,直到异常被捕获处理、

常用格式

返回值类型 方法名(方法参数) throws 异常类1异常类2.{

//方法体

}

1.2.4 异常分类:

非受检和受检异常。

非受检异常只编译器不要去呀强制处理的,一般是程序员代码编写方式不当而导致的异常。RunimeException异常类以及他的子类都数以它的子类都属于非受检异常。

受检类异常,指编译器要求必须强制处理的问题,即程序在运行时由于外界原因编写不当的编号。

ClassNotFoundExceptiom

IOException:操作文件时发生的异常

SQLexcption:操作数据库时发生的异常

1.2.5 Java异常处理机制的特点

1、可以将异常对象在方法调用中传递,通过传递可以将异常对象传递到合适的位置再处理。使用这种机制,使得Java语言的异常处理更加灵活。

2、可以在源代码级别将正常执行的逻辑代码和异常处理的代码相分离,更加便于代码阅读和维护。

3、异常处理机制也存在一些弊端,过度使用异常处理将降低的执行效率,增加语法的复杂度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值