Day11知识总结:异常处理细节:定义功能时,功能中有什么问题,,应该通过throws声明抛出,让调用者进行处理。调用了抛出异常的功能的函数,应该进行处理,如果使用trycatch处理的话,被调用的功能上抛出几个异常,就应该对应几个catch语句,必须要对多个异常进行针对性的处理。如果出现多个catch中存在着父类异常的catch,那么这个catch一定放在catch的最后,通常这种情况在面试很多见。如果函数内抛出异常,那么一定要在函数上声明,否则编译失败,但是要注意函数内抛出的异常是运行时异常(RuntimeException),那么函数上是可以不用throws声明的。如果函数内抛出了异常,进行了本功能内部的处理,但是处理的并不完全,这时应该在异常处理中,继续将异常抛出,让在函数上声明让调用者知道问题的存在,但是有可能需要将异常进行转换,尽量抛出调用者识别的异常,处理起来更方便。当子类覆盖父类中的异常声明的方法时,子类方法只能声明父类的异常或者该异常的子类。如果父类抛出了多个异常,那么子类在覆盖时买智能抛出父类异常的子集。如果父类和接口中的方法没有声明抛出过异常,那么子类的覆盖父类方法时,也不能抛出异常,如果子类中的方法发生了异常,那么子类只能trycatch不能用throws声明,只能try,不能抛,如果非要在函数内抛出异常,那么只能抛出RuntimeException,因为这种异常不用在函数声明上。finally:定义一定会被执行的代码。通常用来关闭资源,异常处理的三种格式:trycatchfinallyTrycatch//可以多个catchTryfinally记住:catch是用于处理异常的,如果没有catch就代表异常没有被处理过,如故哦该异常是检测时异常,必须被声明。代码体现:异常总结:异常是什么?是对问题的描述,将问题进行对象的封装。异常体系:Throwable|---Error|--Exception|--RuntimeException异常体系的特点:异常体系中的所有类以及建立的对象都具有可抛性。也就说可以被throw和throws关键字操作。只有异常体系具备这个特点。Throw和throws的用法:Throw定义在函数内,用于抛出异常对象。Throws定义在函数上,用于抛出异常类,可以抛出多个用逗号隔开。函数内有throw抛出异常对象,并未进行try处理必须要在函数上声明,否则编译失败, 注意:RuntimeException异常除外,也就说函数内如果抛出的是RuntimeException函数上可以不用声明,如果函数声明了异常,调用者需要进行处理吗,处理方式throws也可以try异常有两种:编译时检测异常:该异常在编译时如果没有处理,如果没有处理(没有抛也没有try)编译失败运行时异常在编译时,不需要处理,编译器不检查,该异常发生,建议不处理,让程序停止,需要对代码进行修正。异常处理的语句:try{ 需要被检测的代码}catch(){异常处理代码}fianlly{一定会执行的代码}有三种结合的格式:1、try{}catch(){}finally{}2、try{}catch(){}3、try{}finally{}注意:1、finally中定义的通常是关闭资源,因为资源必须被释
黑马程序员java培训就业班笔记day11总结 来自淘豆网m.daumloan.com转载请标明出处.