java中的异常类型以及区别????

一、引言

  根据JDK的文档我们能够找到异常所在的包:java.lang.Throwable中,Throwable是所有异常类的根类,error是错误,在java.lang.error中,而Exception是异常在java.lang.exception中能够找到

二、error概述

  当发生error类错误的时候,我们需要联想到该错误的原因大多数都是跟虚拟机有关的问题,例如内存不够、虚拟机错误等信息。对于这些错误信息导致程序中断停止、这种行为仅靠修改代码本身是无法进行修复的,更多的建议是将程序终止。

三、Exception概述

  当发生Exception时,程序本身可以自身处理异常,这是与error的本质的区别,发生error错误时自身无法去处理这个错误。

  Exception有很多子类,所以查看JDK文档可以得出Exception异常又可以分为Runntime exception 和 其他异常:

  • RuntimeException异常发生时,一定是写的代码出现了问题、比如数组越界没有考虑到、空指针异常没有考虑到等这些信息,所以不需要通过throws处理,可以直接抛出去,抛出去后不要求调用者进行处理,故调用者可以处理也可以不处理,如果不处理就会一直往上抛,最后会抛给虚拟机去停止当前的线程
  • 其他异常发生时,我们在执行代码可以将此异常进行捕获(try-catch)或者将此异常抛出(throws),所以一旦抛出,就要求调用者必须处理

  常见的异常类型:  

    ArrayIndexOutOfBoundsException 数组下标越界异常,

    ClassNotFoundException 类型不存在

    NullPointerException 空指针异常

    IllegalArgumentException 不合法参数异常

 

转载于:https://www.cnblogs.com/cczequn/p/7993442.html

Java异常处理机制是一种用于处理程序运行时错误的机制。当程序出现异常情况时,异常处理机制可以捕获并处理这些异常,使程序能够以一种可控的方式继续执行,而不是直接崩溃终止。 Java异常为两种类:检查异常(checked exception)和非检查异常(unchecked exception)。 1. 检查异常(Checked Exception): 检查异常是指在编译时必须进行处理的异常。它们继承自`Exception`类,包括诸如`IOException`、`SQLException`等。如果方法可能抛出一个检查异常,要么在方法使用`try-catch`块来捕获并处理异常,要么在方法声明使用`throws`关键字声明将异常抛给调用者处理。 2. 非检查异常(Unchecked Exception): 非检查异常是指不需要在编译时进行处理的异常。它们继承自`RuntimeException`类,包括诸如`NullPointerException`、`ArrayIndexOutOfBoundsException`等。非检查异常通常是由程序逻辑错误造成的,应该在代码进行预防和修复。 Java异常处理机制使用了以下关键字和语句: - `try-catch`块:用于捕获并处理异常。在`try`块编写可能抛出异常的代码,并使用`catch`块来捕获和处理特定类异常。 - `throws`关键字:用于在方法声明声明可能抛出的异常,将异常抛给调用者处理。 - `finally`块:可选的`finally`块用于包含在`try-catch`块之后执行的代码,无论是否发生异常都会执行。 通过使用异常处理机制,程序可以更好地处理和恢复错误情况,提高程序的健壮性和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值