如何理解java中的异常和异常处理

作者:追风筝的人 | 创建时间: 2023-07-20
异常与异常处理...
如何理解java中的异常和异常处理

操作方法

对于异常的正常处理,能够将异常提供给编程人员,或者是用户,使得本来已经中断了的程序以适当的方式继续运行,或者是退出,并且能够保存用户的当前操作,或者进行数据回滚,最后再把占用的资源释放掉。

java中所有不正常类都继承于Throwable Throwable有两个子类,一个是Error,一个是Exception. Error的出现有两种情况 一种是:虚拟机错误,一种是线程死锁ThreadDeath Error出现是硬伤,系统问题。 而Exception 的出现则是因为你的编码,环境,或者操作输入出现了问题。 Exception有很多子类 一种是RuntimeException(非检查异常),其他的异常则是(检查异常) 能够引起 运行时异常有这样几种情况:引用了一个空对象的属性或者方法;也有可能是数组访问越界;或者是一个错误的类型转换,也有可能是算数方面引起的异常,比如说用整数去整除零。

空指针异常(NullPointerException) String str=null; System.out.println(str.length()); 数组下标越界(ArrayIndexOutOfBoundsException) int[] ary={1,2,3} for{int i=0;i<=3;i++){ System.out.println(ary[i]); } 类型转换异常(ClassCastException) class Animal{ } class Dog extends Animal{ } class Cat extends Animal{ } public class Test{ public static void main(String[] args){ Animal a1=new Dog(); Animal a2=new Cat(); Dog d1=(Dog)a1; Dog d2=(Dog)a2; 算数异常(ArithmeticException) int one=12; int two=0; System.out.println(one/two); 运行时异常会由java虚拟机自动抛出,并自动捕获。 运行时出现异常大部分情况说明代码本身有问题,应该从逻辑上去改进代码。

检查异常 可能会出现文件异常(IOEXception)或者SQL异常等等各种各样你想象不到的原因。你需要手动添加捕获,或者处理语句。

点击展开全文

更多推荐