异常是指当程序中某些地方出错时创建的一种特殊的运行时错误对象。Java创建异常对象后,就发送给Java程序,即抛出异常(throwing an exception)。程序捕捉到这个异常后,可以编写相应的异常处理代码进行处理。使用异常处理可以使得程序更加健壮,有助于调试和后期维护。
Java异常通常在调用某些方法不一定完全成功时抛出,针对抛出的异常程序需要给出相应的处理,这称为异常处理。异常处理分为三个部分:捕捉异常、程序流程的跳转和异常处理语句块。
当一个异常被抛出时,程序中有专门的语句来接收这个被抛出的异常对象,这个过程就是捕捉异常;当一个异常类的对象被捕捉或接收后,用户程序就会发生流程跳转,系统中止程序运行,跳转到异常处理语句的执行,或者直接跳出系统,回到操作系统状态下。在Java语言中,try语句用来启动Java的异常处理机制,通常是可能抛出异常的语句的调用;而catch语句进行捕捉和处理异常,有时添加finally语句块,finally中的语句是正常执行或者处理异常之后必须执行的语句。语句格式如下:
try
{
语句块;
}
catch(异常类 异常类参数名)
{
异常处理语句块;
}
finally
{
try或者catch语句完毕后必须执行的语句(通常用于关闭文件流对象或者数据库对象等);
}
1. 直接抛出异常
例如:
public void myMethod()
{
try
{
urlName = new URL("http://www.sina.com.cn");
getAppletContext().showDocument(urlName,"right");
}
catch(MalformedURLException e)
{
System.out.println(e.getMessage());
}
}
try部分试图打开一个网址http://www.sina.com.cn,如果不成功,比如网址输入错误,那么引发异常程序忽略try中的下一行代码,直接跳到catch块中执行语句System.out.println(e.getMessage()),打印出引发的异常的错误信息描述。其中MalformedURLException说明引发的异常可能是URL网址输入错误类。
2. 间接抛出异常
例如:
public void myMethod() throws MalformedURLException
{
urlName = new URL("http://www.sina.com.cn");
getAppletContext().showDocument(urlName,"right");
}
在方法后面直接抛出
3. 综合方法
例如:
public void myMethod() throws MalformedURLException
{
try
{
urlName = new URL("http://www.sina.com.cn");
getAppletContext().showDocument(urlName,"right");
}
catch(MalformedURLException e)
{
System.out.println(e.getMessage());
}
}
7.1.4 多异常的处理
多异常的处理使用多个catch来捕捉不同类的异常,Java中对catch块的数量没有限制。格式如下:
Try
{
...
}
catch(异常类1 标识符)
{
...
}
catch(异常类2 标识符)
{
...
}
finally
{
...
}
分享到:
相关推荐
对异常捕捉的运用
自己编写异常类型 ,自定义错误异常进行全局捕捉。实现项目全局的拦截定义输出。。。
主要全面介绍了Java中对于异常的捕捉方法,是Java入门学习中的基础知识,需要的朋友可以参考下
在java多线程程序中,所有线程都不允许抛出未捕获的checked exception,也就是说各个线程需要自己把自己的checked exception处理掉,通过此篇文章给大家分享Java多线程之多线程异常捕捉,需要的朋友可以参考下
java基础异常学习ppt 学完本次课程后,你能够 了解异常概念 理解Java异常处理机制 会捕捉异常 会抛出异常 了解Java异常体系结构
异常处理是Java语言的重要机制,正确、合理地处理异常对系统的健壮性和稳定性提供了强有力的支持。异常的处理主要包括捕捉异常、程序流程的跳转和异常处理语句块的定义等。
oRuntimeException:运行时异常,也叫非检查异常(NullPointerException、ArrayIndexOutOfBoundsException、ClassCastException、ArithmeticException),会由Java虚拟机自动抛出并自动捕获,此类异常的出现绝大数...
主要为大家详细介绍了java实现系统捕获异常发送邮件案例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
与Java语言相同,JavaScript可以通过throw语句来抛出异常。与Java语言不同的是,JavaScript中可以通过throw语句抛出所有类型的值,而不仅止于抛出错误对象。 代码如下: //Throw an Error object. try{ throw new...
对java异常的总结,详细描述了JAVA异常的分类,异常的抛出和捕捉的机制,以及在项目应用中应该如何对异常作单独处理
7.2 异常与异常类 7.2.1 Java异常体系结构 Java中的异常有很多类型,包括在Java API中已经被定义的异常(也称系统异常)和用户自定义异常。所有的异常类都直接或间接继承了Throwable类。Throwable类是Object类的...
Java中的异常处理通过try-catch语句实现,可以捕捉和处理程序中出现的异常情况。 文件读写:Java中的文件读写包括输入输出流、文件类、缓冲流等。Java中的文件读写可以通过Java I/O API来实现。 多线程编程:Java中...
题目:输入两个整数将其整除,用try-catch语句捕获除数为0的异常。 本代码是c#语言编写的关于异常处理的代码,运行正常。
javaexception.zip 07.Java面向对象编程扩展(计算器异常捕捉实例) 第3部分(5个程序包) javaio.zip 09.Java输入/输出流 javavi.zip 09.Java输入/输出流上机作业参考(文本编辑器) javathread.zip 10.Java多...
熟悉Java的异常处理机制,了解如何捕捉和处理异常。 了解Java的集合框架和泛型,包括List、Set、Map等常见集合类型。 掌握Java的文件读写操作,包括读写文件、处理文件路径等。 熟悉Java的多线程编程,包括创建线程...
关键字:throws 声明方法时候,如果不声明throws的话,那么一般的Exception都要在这个方法中终结,也就是说一定要有相应的catch处理,否则编译时会产生错误。如果方法声明了throws的话,可以交给上一级方法去...
javaexception.zip 07.Java面向对象编程扩展(计算器异常捕捉实例) 第3部分(5个程序包) javaio.zip 09.Java输入/输出流 javavi.zip 09.Java输入/输出流上机作业参考(文本编辑器) javathread.zip 10.Java多...
可以基本了解异常的设定、捕捉、处理过程 applet界面 显示处理结果相关信息