12.异常

1.定义

   中断了正常指令流的事件。异常是在运行错的(语法是正确的)。
2.分类
   异常是一个对象,虚拟机生成的,类是由JDK提供。
   
     Throwable是所有异常错误的父类。
     Error:虚拟机运行时产生错误,程序员无能为力,程序员只能处理Exception。
     Exception分为两大类:1、生成时异常;2、运行时异常
      另外一种分类:
     1、 un check exception(包括RuntimeException以及子类,编译可以通过)
     2、 check exception(包含除了RuntimeException之外Exception的其他 子类 ,编译通不过)
3.处理:try…catch…finally(捕捉)
   当一行代码有可能产生异常,而异常又是 check exception,java编译要求对 可能出现异常放进try。异常则进入catch。
   finally是无论出不出异常都会执行,一般是用来释放资源。
   只带有finally的try必须要声明异常。
   有多个catch块时要从小排到大,大的是父类。
4.关键字。throw和throws
  throw抛出异常对象,程序会中止(如果不用try  catch),java虚拟机判断不了,可以抛出异常,通常是认为判断抛出的异常。
  throws声明异常。其实是踢皮球public void setAge(int age) throws Exception,setAge()这个函数有可能产生异常,异常并不由于setAge()这个函数来处理,而是在调用真正调用 setAge()的时候处理(即谁调用谁处理),这个时候需要在调用函数的时候 用try catch处理。
  可以声明多个异常,中间“,”隔开。
 异常处理:
  1、在一个函数里面,有可能会产生异常(check exception)时候。可以在函数内部用try catch把可能产生的异常的代码处理下。
  2、也可以在函数后面声明throws + 异常类型。声明后该函数就没责任处理异常,而是由调用这个函数的地方try catch处理。
 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值