浅谈Java中的Exception


什么是异常:
当我们运用实体和其他进行交互的时候,发生不能正常运行的情况,Java把中断程序正常运行的这类错误称为异常.

异常类:
Throwable是异常主类,主要分为Error和Exception

Error:这是系统自身问题导致的,因此我们无法对这个进行处理,是不可以控制的.

Exception:分为两大块一:Checked Exception和RuntimeException
Checked Exception:检查型异常又称为编译时异常,此异常是程序必须捕获或者进行抛出的异常,否则程序会在编译时无法进行下去.常见的非检查型异常有:
IllegalAccessExcetion:非法访问某类异常
IOException:输入输出流异常
FileNotFoundException:文件未找到异常
SqlException:数据库异常

RuntimeException:运行时异常,通常这类异常是由于调用方法不正确导致的异常,应该去修改代码出现的问题,这类方法不需要声明或者抛出,一般情况下我们需要打印异常日志.常见
的异常有:
ArithmeticException:算术条件异常
NullPointException:空指针异常
ArrayIndexOutOfBoundsException:数组越界异常
ClassNotFoundException:找不到类异常
ClassCastException:强转换异常
NegativeArraySizeException:数组长度为负异常
NumberFormatException:数据格式不正确异常

throw和throws的区别:
位置不同:throw 出现在方法体中,一般后面跟异常对象,throws一般跟在方法体上,后面跟异常类
功能不同:throws用来声明异常,让调用者知道可能会出现该异常,给出异常的预处理;throw用来抛出具体的异常对象,执行到该处时表示程序已经结束,因此没有必要在其后面继续编码.
两种处理方式都是消极的处理态度,异常信息都是抛给调用的对象进行处理的,所以我们会使用try{} catch(){}finally{}来进行主动的处理
try{}:处理可能会抛出异常代码,当代码出现异常时会创建一个异常对象,并把对象交给运行环境,然后抛出.ry语句不能单独存在,可以和catch、finally组成 try...catch...finally、try...catch、try...finally三种结构,catch语句可以有一个或多个,finally语句最多一个,try、catch、finally这三个关键字均不能单独使用。
catch() {}:处理抛出的异常,处理异常的顺序按照异常从小到大依次捕获.
finally{}:这是一定会执行的部分,因此我们通常会用来关闭一些流,不建议使用return

注意:处理异常是一个十分耗资源的事情,因此我们在捕获异常的时候要特别的注意不要将不会发生异常的代码放在try{}代码块中.

final:关键字final定义的方法不可以被继承String,定义的方法不可以重写,定义的变量是需要进行预编译的,不可以改变.
finalize:这是gc的方法,当虚拟机调用这个方法清理内存垃圾时,会再次调用这个对象的方法,但是只会执行一次,下次会直接清除
finally:异常捕获中的关键字,这是一定会执行的部分,因此我们多会进行流等资源的关闭操作,一般不要进行return

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值