`
reginaminlee
  • 浏览: 32562 次
  • 性别: Icon_minigender_2
  • 来自: 湖南
社区版块
存档分类
最新评论

运行时异常与一般异常有何异同

    博客分类:
  • java
 
阅读更多

Throwable是所有Java程序中错误处理的父类,有两种子类:Error和Exception。

   Error:表示由JVM所侦测到的无法预期的错误,由于这是属于JVM层次的严重错误,导致JVM无法继续执行,因此,这是不可捕捉到的,无法采取任何恢复的操作,顶多只能显示错误信息。

Exception:表示可恢复的例外,这是可捕捉到的。

Java提供了两类主要的异常:runtime exception和checked exception。checked 异常也就是我们经常遇到的IO异常,以及SQL异常都是这种异常。对于这种异常,JAVA编译器强制要求我们必需对出现的这些异常进行catch。所以,面对这种异常不管我们是否愿意,只能自己去写一大堆catch块去处理可能的异常。

    但是另外一种异常:runtime exception,也称运行时异常,我们可以不处理。当出现这样的异常时,总是由虚拟机接管。比如:我们从来没有人去处理过NullPointerException异常,它就是运行时异常,并且这种异常还是最常见的异常之一。

    出现运行时异常后,系统会把异常一直往上层抛,一直遇到处理代码。如果没有处理块,到最上层,如果是多线程就由Thread.run()抛出,如果是单线程就被main()抛出。抛出之后,如果是线程,这个线程也就退出了。如果是主程序抛出的异常,那么这整个程序也就退出了。运行时异常是Exception的子类,也有一般异常的特点,是可以被Catch块处理的。只不过往往我们不对他处理罢了。也就是说,你如果不对运行时异常进行处理,那么出现运行时异常之后,要么是线程中止,要么是主程序终止。

    如果不想终止,则必须捕捉所有的运行时异常,决不让这个处理线程退出。队列里面出现异常数据了,正常的处理应该是把异常数据舍弃,然后记录日志。不应该由于异常数据而影响下面对正常数据的处理。在这个场景这样处理可能是一个比较好的应用,但并不代表在所有的场景你都应该如此。如果在其它场景,遇到了一些错误,如果退出程序比较好,这时你就可以不太理会运行时异常,或者是通过对异常的处理显式的控制程序退出。

分享到:
评论

相关推荐

    运行时异常与一般异常的区别?

    运行时 异常 与一般 异常 的区别的详细说明..

    Java面试题

    5运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,...

    面试笔试集锦.rar

    5 运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,...

    JAVA面试题汇集

    5、运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,...

    JAVA相关基础知识120问

    5、运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,...

    华为java经典面试题大总结

    5 运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,...

    Java面试题大全 以及答案

    5、运行时异常与一般异常有何异同? 6、说出Servlet的生命周期,并说出Servlet和CGI的区别。 7、说出ArrayList,Vector, LinkedList的存储性能和特性 8、EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的...

    概念类JAVA试题 适合初学者

    5、运行时异常与一般异常有何异同? 6、说出Servlet的生命周期,并说出Servlet和CGI的区别。 7、说出ArrayList,Vector, LinkedList的存储性能和特性 8、EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的...

    Java程序员面试宝典 PDF 参考资料.rar

    Java程序员面试宝典 pdf,内容涉及String、Servlet、int 和 Integer的区别、、String 和StringBuffer的区别、运行时异常与一般异常有何异同、Servlet的生命周期、、EJB的技术实现、、Collection 和 Collections的...

    程序员面试之葵花宝典

    3、int 和 Integer 有什么区别 4、String 和StringBuffer的区别5、运行时异常与一般异常有何异同?6、说出Servlet的生命周期,并说出Servlet和CGI的区别。7、说出ArrayList,Vector, LinkedList的存储性能和特性8、...

    Java笔试题目汇总

    5、运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,...

    java 经典面试题

    5、运行时异常与一般异常有何异同? 3 6、说出Servlet的生命周期,并说出Servlet和CGI的区别。 3 7、说出ArrayList,Vector, LinkedList的存储性能和特性 3 8、EJB是基于哪些技术实现的?并说出SessionBean和Entity...

    最全面试笔试整合(比较齐全包括网页,文档。。。)

    5 运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,...

    企业java面试题(笔试+面试)

    HP笔试题 (时间30分钟,顺序有出入,答案仅供参考) 以下为问答题,每题3分 1. Java的基本类型 boolean,char,byte,short,int,long,float,double 2. String 和StringBuffer的区别 ...3.运行时异常与一般异常有何异同?

    计算机后端-Java-Java核心基础-第17章 异常处理 12. 编译时异常和运行时异常的不同处理.avi

    计算机后端-Java-Java核心基础-第17章 异常处理 12. 编译时异常和运行时异常的不同处

    2013年最全的JAVA面试题集,内部资料,绝对能帮助到你,不要后悔哦。

    2.运行时异常与一般异常有何异同? 3.面向对象的特征有哪些方面?(难度1级) 4. 运行时异常与一般异常有何异同?(难度1级) 5.作用域public,private,protected,以及不写时的区别?(难度1级) 6.Java 有几种修饰符...

    Java程序员面试宝典

    5、运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,...

    java面试笔试题大汇总

    5、运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常...

    企业java工程师测试题

    企业java工程师测试题 1. 面向对象的特征有哪些方面? 答案:最基本特征:封装,继承,多态。 其他特征:抽象关联,聚合,组合,内聚,耦合 2. String是最基本的数据...5. 运行时异常与一般异常有何异同? 。。。。。

    java笔试大全(绝对经典)

    面向对象的特征有哪些方面 运行时异常与一般异常有何异同?

Global site tag (gtag.js) - Google Analytics