uh载入java出现错误_回顾JAVA---3.异常

---异常---

- 异常:就是不正常,程序运行时出现的不正常情况,其实就是程序出现了问题,

这个问题按照面向对象的思想进行描述,并封装成了对象,因为问题的产生有产生的原因,

有问题的名称,有问题的描述等多个属性信息存在,当出现多属性信息最方便的方式就是讲这些信息进行封装,

异常就是java按照面向对象的思想将问题进行对象封装,这样就方便于操作问题及处理问题

- 出现的问题有很多种,比如角标越界,空指针等都是,就对这些问题进行分类,而且这些问题都有共性内容

比如:每一个问题都有名称,同时还有问题描述的信息,问题出现的位置,所以可以不断的向上抽取,现成了异常体系

- 这个体系中所有的类都具备一个独有的特点就是可抛性

- 可抛性的体现:就是这个体系中的类和对象都可以被throws和throw两个关键字所操作

- 在开发时,如果定义功能时,发现该功能会出现一些问题,应该将该问题在定义功能时标示出来,这样调用者使用时预先给出处理方式

- 处理方式:1.捕捉 2.抛出

try{

需要被检测的代码;

}

catch(异常类 变量名){

异常处理的代码;

}

finally{

一定会执行的代码;

}

- 异常处理原则:功能抛出异常,功能调用如果进行try处理,需要与之对应的catch处理代码块,这样的处理有针对性,抛几个就处理几个

- 特殊情况:try对应多个catch时,如果有父类的catch语句块,一定要放在最下面

- throw用于抛出异常对象,后面跟的是异常对象,throw用在函数内

- throws用于抛出异常类,后面更的异常类名,可以跟多个,用逗号隔开,throws用在函数上

- 功能内部如果出现异常,如果内部可以处理,就用try,如果不能处理就必须声明出来,让调用者处理,使用throws抛出

- 自定义异常:项目中出现了java中没有定义过的问题时,这时就需要我们按照java异常建立思想,将项目中的特有问题进行封装,这个异常叫做自定义异常

- 自定义异常的步骤:定义一个子类继承Exception或RuntimeException,让该类具备可抛性,通过throw或throws进行操作

- 异常转换思想:当出现的异常是调用者处理不了的,就需要将此异常转换为一个调用者可以处理的异常抛出

- 当子类覆盖父类的方法时,如果父类的方法抛出异常,那么子类方法要么不抛出异常要么抛出父类异常或者给异常的子类,不能抛出其他异常

- 如果父类抛出多个异常,那么子类在覆盖时只能抛出父类的异常子集

- 如果父类或者接口中的方法没有抛出过异常,那么子类是不可以抛出异常的,如果子类的覆盖方法中出现了异常,只能try不能throws

- 如果这个异常子类无法处理,已经影响了子类方法的具体运算,这时可以在子类方法中通过throw抛出RuntimeException异常或者子类异常

- 常见异常

--角标越界异常(IndexOutOfBoundsException)

--空指针异常(NullPointerException)

--类型转换异常(ClassCastException)

-异常要尽量避免,如果避免不了,需要预先给出处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值