Java 异常

1. 当异常发生时,该异常对象被创建并且导致该错误的方法中被抛出(throw)。该方法可以选择自己处理异常或传递该异常。被捕获(caught)并处理。可能由java运行时系统产生,也可手工代码产生。被抛出的异常与违反语言规范或超出java执行环境限制的基本错误有关

2. try-catch

try{

System.out.print("请输入你的年龄");

Scanner input=new Scanner (System.in);

int age= input.nextInt();

System.out.println("输入整数";)

} catch(InputMismatchException e){

System.out.println("你应该输入整数");

}

System.out.println("程序结束");

3. 多个catch块

catch(ArithmeticException e){

e.printStackTrace();

System.out.println("除数不能为0");

}

4. 注意:先子类再父类编写catch块

5.异常处理块和return 语句的执行顺序:

try →catch(catch有return则预先确定返回路径)→执行Finally,如果包含return则执行Finally的return语句;否则执行catch中的return,并且在Finally中对返回值进行的修改不会保存,因为已经预定好了返回路径。如果整个异常处理块没有return语句,则跳出块继续执行,直到执行完return语句。

6. 所有异常类型都是内置类Throwable的子类。下面一个分支是exception。在Exception分支中有一个重要的子类RuntimeException。该类型的异常自动为你编写的程序定义并且包括被零除和非法数组索引这样的错误。另一个分支由Error作为顶层,与系统本身有关。

7. 异常抛出

throw----将产生的异常抛出

throws---声明将要抛出何种类型的异常(声明)

              public void void divide(int one, int two) throws Exception{

if(two==0){

throw new Exception ("除数不能为0");

}else{

System.out.println("结果为"+one/two);

}

}

8. 自定义异常

class 自定义异常类 extends 异常类型{

public DrunckException(String message){

super(message);

}

}













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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值