`
wx1568520008
  • 浏览: 20454 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

关于Java异常

 
阅读更多

1d8baebe8eecb11f30e1acb300239da1924.jpg

 

    异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error;如果你用System.out.println(100/0),那么你是因为你用0做了除数,会抛出 java.lang.ArithmeticException 的异常。

常见的异常

输入输出异常:IOException算术异常类:ArithmeticExecption空指针异常类:NullPointerException类型强制转换异常:ClassCastException操作数据库异常:SQLException文件未找到异常:FileNotFoundException数组负下标异常:NegativeArrayException数组下标越界异常:ArrayIndexOutOfBoundsException违背安全原则异常:SecturityException文件已结束异常:EOFException字符串转换为数字异常:NumberFormatException方法未找到异常:NoSuchMethodException

异常处理方式

bc4fa828e649a9f793587b1c432c23b023c.jpg

通过try、catch捕获异常

try{

// 程序代码

}catch(ExceptionName e1){

//Catch 块

}

通过throws抛出异常

定义一个方法的时候可以使用throws关键字声明。使用throws关键字声明的方法表示此方法不处理异常,而交给方法调用处进行处理。

throw关键字抛出异常

throw关键字作用是抛出一个异常,抛出的时候是抛出的是一个异常类的实例化对象,在异常处理中,try语句要捕获的是一个异常对象,那么此异常对象也可以自己抛出。

 

try{

    return;    

}

catch(){

        }

finally{

    }

return;

 

按照程序的执行顺序,代码段首先进入try语句,因无异常抛出,代码将要return的内容保存在内存中,然后执行finally,因finally中无可执行内容,再转回try中执行return,整个代码段执行结束,而finally后面的return是不会执行的。

1、不管有没有出现异常,finally块中代码都会执行;2、当try和catch中有return时,finally仍然会执行;3、finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值保存起来,不管finally中的代码怎么样,返回的值都不会改变,仍然是之前保存的值),所以函数返回值是在finally执行前确定的;4、finally中最好不要包含return,否则程序会提前退出,返回值不是try或catch中保存的返回值。

转载于:https://my.oschina.net/u/4167465/blog/3094698

分享到:
评论

相关推荐

    关于Java异常的练习

    通过这个"关于Java异常的练习",你可以实践如何有效地处理异常,理解何时使用不同的关键字,以及如何编写符合最佳实践的异常处理代码。通过对`demo9`等示例代码的分析和修改,加深对Java异常处理机制的理解,提升...

    java异常处理习题

    下面是关于 Java 异常处理的习题和知识点总结: 一、Java 异常处理关键字 * Java 中用来抛出异常的关键字是 `throw`。 * `try`、`catch` 和 `finally` 是 Java 异常处理的三个主要组成部分。 二、异常处理机制 *...

    关于Java异常处理的几条建议_动力节点Java学院整理

    下面是关于 Java 异常处理的几条建议: 建议 1: 只针对不正常的情况才使用异常 异常只应该被用于不正常的条件,它们永远不应该被用于正常的控制流。使用异常来终止循环不仅难以理解,而且还会影响程序的性能。创建...

    JAVA异常出错的教程,非常全面。

    在这个教程中,"mbsky.com.txt"可能是一个包含了更多关于Java异常处理的实际案例或者示例代码的文本文件,而"下载说明.txt"可能是如何获取和使用这个教程的详细步骤。"java"文件可能是一个实际的Java源代码文件,...

    java异常 各种异常

    根据给定文件的信息,我们可以提炼出关于Java异常处理的一些关键知识点。尽管提供的内容与异常处理直接相关的部分较少,但基于标题、描述以及部分上下文,我们可以深入探讨Java异常处理的相关概念。 ### Java异常...

    Java\课件\JAVA的异常处理机制.ppt

    以下是关于Java异常处理机制的详细说明: 1. **什么是异常处理机制**: Java的异常处理机制是一种用于处理程序运行时错误的机制,它将原本需要程序员手动检查和处理的错误情况,转变为由系统自动检测和报告。当...

    java异常处理java异常处理

    java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理

    高效的java异常处理框架高效的java异常处理框架高效的java异常处理框架

    本文将从 Java 异常的基本概念和语法开始,讲述 Java 异常处理的基本知识,分析 Java 异常体系结构,对比 Spring 的异常处理框架,阐述异常处理的基本原则,并提出了自己处理一个大型应用系统异常的思想,并通过设计...

    java异常编程实例.rar_java异常_site:www.pudn.com

    在`www.pudn.com.txt`文件中,可能包含了关于Java异常的详细信息和实例代码,这些实例可以帮助开发者理解如何在实际项目中应用异常处理。通过分析和实践这些例子,开发者可以更好地掌握Java异常处理的技巧,提升编程...

    java 异常详解,java异常分类,创建自己的异常

    Java 异常详解 Java 异常是指在程序运行中出现的违背指定正常流向的事件。异常可以分为两大类:-checked 异常和 unchecked 异常。Checked 异常必须在编译时捕捉并处理,而 unchecked 异常可以在编译时忽略,但是在...

    JAVA实验九异常处理.pdf

    根据给定文件内容,可以提取以下知识点关于Java异常处理: 1. 异常处理基础: Java中的异常处理是通过try、catch、finally以及throw关键字来实现的。try块中包含可能会抛出异常的代码,catch块用于捕获并处理特定...

    Java异常处理.xmind

    个人关于java异常处理的思维导图总结。0积分下载。如果认为有帮助,请关注点赞,日后还有更多免费资源。敬请关注。

    深入java异常学习指南

    ### 关于Java异常处理机制的深入理解 Java异常处理主要围绕`try`、`catch`和`finally`等关键字构建,它们共同构成了异常处理的基本框架。然而,看似简单的异常处理背后,隐藏着许多复杂的逻辑和细节,这些都需要...

    java异常机制小结

    Java 异常机制的基础知识包括异常的基础概念、异常的分类、异常的对象、异常的来源、异常的处理等几个方面。 一、Java 异常的基础知识 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以...

    java异常处理练习题

    java异常练习题,北大青鸟学士后课后练习,主要是异常处理的小测验

    Java异常面试题(2024最新版).docx

    以下是一些关于Java异常处理的关键知识点: 1. **Java异常架构**: - **Throwable**:它是所有错误和异常的基类,包括Error和Exception。 - **Error**:这些是程序无法处理的严重问题,通常与JVM或系统环境有关。...

    Java异常学习资料

    Java异常处理是Java编程语言中的一个关键特性,它允许程序员优雅地处理程序运行时出现的错误情况,确保程序的稳定性和可靠性。这份“Java异常学习资料”包含了丰富的资源,帮助你深入理解Java异常机制,提升代码质量...

    一篇不错的讲解Java异常的文章

    从给定的文件信息中,我们可以提炼出关于Java异常处理的关键知识点,这将帮助我们深入理解Java中的异常机制以及如何有效地处理它们。 ### Java异常处理的重要性 Java异常处理是编程中一个至关重要的部分,它允许...

    java异常 异常的概念 应用

    Java异常处理是编程中至关重要的一个环节,它关乎程序的健壮性和稳定性。在Java中,异常(Exception)被用来表示程序运行时发生的错误或不正常情况。异常并不等同于错误,它是程序设计的一部分,允许我们优雅地处理...

Global site tag (gtag.js) - Google Analytics