句子大全

句子大全 > 好句子

如何处理Java中的运行异常及了解java的异常处理机制

好句子 2014-07-23 01:30:41
相关推荐

大家好,又到了我们的知识点分享时刻,书读百遍,其义自现,Java的学习是循序渐进的过程,知识点的理解随着过目的次数逐渐会有不同的境界,每天十分钟小编帮您理解的更深入。今天要和大家分享的是Java的异常处理机制、异常使用原则以及如何处理程序中的异常。

捕捉异常

Java的异常捕获结构由3部分组成,try、catch和finally。try中的代码块存放的是可能发生异常程序。catch中存放的是try语句执行后用来激发被捕获的异常。finally是异常捕获结构的最后执行部分,无论前面的代码执行如何,finally都将执行程序块。

Java异常处理机制设计的目的是为了让开发人员考虑程序的强健性和安全性,异常处理的主要作用是捕获程序运行过程发生的异常,并对异常进行处理。

NumberFormatException异常代码

上面图片中代码运行后出现的异常是NumberFormatException(字符串转换为数字异常),但是程序依然会输出结果,不会因为异常而终止,说明了Java的异常处理是结构化的。try中发生异常后会转到catch中,catch中处理之后,就会继续执行后面的代码(System.out.println("program over"))。

其中Exception是try代码块传递给catch代码块的变量类型,e是变量名。异常处理通常用以下3个函数捕获:

getMessage( )函数:输出错误性质toString( ) 函数:给出异常的类型和性质printStackTrace( ) 函数:指出异常的类型、性质、栈层次及出现在程序中的位置。不管程序中是否有异常发生,通常完整的异常处理代码都会包含finally语句,这样无论try-catch是否顺利执行,finally语句都会被执行。但是以下几种情况下finally语句块不会被执行:1.finally语句块发生异常。

2.前面的代码中使用System.exit( )退出程序。

3.程序所在的线程死亡以及CPU关闭。

自定义异常:

除了Java的内置的异常类可以描述程序运行出现的异常外,我们也可以自己定义异常,只需要继承Exception类即刻。

上图代码中使用了throws关键字抛出异常,throws关键字通常被应用在声明方法时,在方法的括号后面使用,用来指定方法可能抛出的异常,多个异常时需要用逗号隔开。而throw关键主要出现在方法体中,执行时会抛出一个异常,上述代码仔细研读,会发现两者的区别。

Java异常类结构

RuntimeException异常时程序运行过程中产生的异常。Java类库中的所有异常类都是Throwable的子类,如上图所示,Error类及其子类用来描述Java系统中内部错误和资源耗尽的错误;而Exception类是非致命异常类,用来捕获异常处理后使程序继续进行。

我们常见的RuntimeException异常类有以下几种:

NullPointException - 空指针异常

ArrayIndexOutOfBoundsException - 数组下表越界异常

ArithmeticException - 算术异常

ArrayStoreException - 数组中包含不兼容的值抛出的异常

IllegalArgumentException - 非法参数异常

SecurityException - 安全性异常

NegativeArraySizeException - 数组长度为负异常

我们在学习中要掌握异常的概念、几种常见的异常类,掌握异常处理技术,和创建激活自定义异常。另外建议读者不要将异常抛出,应该编写异常处理语句。

关注我们,后续会有更多精彩知识

阅读剩余内容
网友评论
相关内容
拓展阅读
最近更新