4.5.1 什么是异常

7 篇文章 0 订阅

Java中通过异常类的形式对非正常情况进行封装,通过异常处理机制对程序运行时发生的各种问题进行处理。

 public class Exception {
     public static void main(String[] args) {
         int result = divide(4,0);//调用divide()方法
         System.out.println(result);
     }
     //通过方法实现两个整数相除
     public static int divide(int x, int y){
         int result = x/y;//定义一个变量result记录两个数相除的结果
         return result;//将结果返回
     }
 }

运行结果如下:

Exception in thread "main" java.lang.ArithmeticException: / by zero

at Exception.divide(Exception.java:8)

at Exception.main(Exception.java:3)

程序发生了算数异常(ArithmeticException),这个异常是由于代码第三行调用divide()方法时传入了参数0,而在divide()方法中,运算时出现了除以0的情况,在这个异常发生后,程序立刻结束,无法继续向下执行。


算数异常(ArithmeticException)是Java异常类中的一种,Java中提供了大量的异常类,这些类都继承自java.lang.Throwable类。如下图:

 


Throwable有两个直接子类Error和Exception,其中Error代表程序中产生的错误,Exception代表程序中产生的异常。

  • Error类称为错误类,它表示Java运行时产生的系统内部错误或资源耗尽的错误,是比较严重的,仅靠修改程序本身是不能恢复执行的。举一个生活中的例子,在盖楼的过程中因偷工减料,导致大楼坍塌,这就相当于一个Error。使用java命令去运行一个不存在的类就会出现 Error错误。

  • Exception类称为异常类,它表示程序本身可以处理的错误。在开发 Java程序中进行的异常处理都是针对Exception 类及其子类。在Exception类的众多子类中有一个特殊的RuntimeException类,该类及其子类用于表示运行时异常。除了此类,Exception类下所有其他的子类都用于表示编译时异常。


Throwable类中的常用方法如下表

方法声明功能描述
String getMessage()返回此throwable的详细消息字符串
void printStackTrace()将此throwable及其追踪输出至标准错误流
void printStackTrace(PrintStream s)将此throwable及其追踪输出至指定的输出流

上表方法均用于获取异常信息,由于Error和Throwable继承自Throwable类,所以它们都拥有这些方法。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值