如何理解java中的异常?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
什么是java异常
Java异常是Java提供的一种识别及响应错误的一致性机制。在程序执行中,任何中断正常程序流程的异常条件就是错误或异常 。
例如,发生下列情况时会出现异常:用户可能键入一个无效的输入值,程序可能试图打开一个不存在的文件,网络连接中断,程序可能试图访问一个越界的数组元素,正在装载的类文件丢失等等
为什么要有异常
为什么要有异常呢?有问题我直接更改,改对就好了呀!大家看,出现问题,然后更改,那是不是首先你应该知道问题在哪里,如果没有异常来报错的话,是不是无法准确的去判断问题到底在哪里呢,所以这里是不是可以认为异常的作用就是指示出问题的代码块的位置及异常的内容呢。
java异常关键字
• try -- 用于监听。将要被监听的代码(可能抛出异常的代码)放在try语句块之内,当try语句块内发生异常时,异常就被抛出。
• catch -- 用于捕获异常。catch用来捕获try语句块中发生的异常。
• finally -- finally语句块总是会被执行。它主要用于回收在try块里打开的物力资源(如数据库连接、网络连接和磁盘文件)。只有finally块,执行完成之后,才会回来执行try或者catch块中的return或者throw语句,如果finally中使用了return或者throw等终止方法的语句,则就不会跳回执行,直接停止。
• throw -- 用于抛出异常。
• throws -- 用在方法签名中,用于声明该方法可能抛出的异常。
示例:
public class Demo1 { public static void main(String[] args) { try { int i = 10/0; System.out.println("i="+i); } catch (ArithmeticException e) { System.out.println("Caught Exception"); System.out.println("e.getMessage(): " + e.getMessage()); System.out.println("e.toString(): " + e.toString()); System.out.println("e.printStackTrace():"); e.printStackTrace(); } } }
运行结果:
Caught Exception e.getMessage(): / by zero e.toString(): java.lang.ArithmeticException: / by zero e.printStackTrace(): java.lang.ArithmeticException: / by zero at Demo1.main(Demo1.java:6)
关于如何理解java中的异常问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。