JAVA Exception 和 Error 的理解

结构:

Error类和Exception类都继承自Throwable类。

Error的继承关系:

java.lang.Object > java.lang.Throwable > java.lang.Error

Exception的继承关系:

java.lang.Object > java.lang.Throwable > java.lang.Exception

定义:

Error(错误)表示系统级的错误和程序不必处理的异常,是java运行环境中的内部错误或者硬件问题,比如,内存资源不足等,对于这种错误,程序基本无能为力,除了退出运行外别无选择。 
Exception(异常)表示需要捕捉或者需要程序进行处理的异常,它处理的是因为程序设计的瑕疵而引起的问题或者在外的输入等引起的一般性问题,是程序必须处理的。
      JAVA 的checked异常和unchecked异常

什么是unchecked异常?即RuntimeException(运行时异常),比如ArrayIndexOutOfBoundException, ClassCastException等,不需要try...catch...或throws 机制去处理的异常,总是由虚拟机接管。这类异常本身就是bug,应该被修复,出现此类错误时程序就应该立即停止执行。 因此,面对Errors和unchecked exceptions应该让程序自动终止执行,程序员不该做诸如try/catch这样的事情,而是应该查明原因,修改代码逻辑。

(附)列举最常用的五种RuntimeException:

 ArithmeticException int a=0;
int b= 3/a;
 ClassCastException: Object x = new Integer(0);
System.out.println((String)x);
 IndexOutOfBoundsException
   ArrayIndexOutOfBoundsException,
   StringIndexOutOfBoundsException 
int [] numbers = { 1, 2, 3 };
int sum = numbers[3];
IllegalArgumentException
   NumberFormatException
int a = Interger.parseInt("test");
NullPointerExceptionextends

除了RuntimeException,其他继承自java.lang.Exception得异常统称为Checked Exception,比如FileNotFoundException, ParseException等。

对于checked exception这种异常,JAVA编译器强制要求我们必需对出现的这些异常进行catch。

JAVA Exception 和 Error 的理解

时间: 2024-10-09 05:29:49

JAVA Exception 和 Error 的理解的相关文章

Java Exception和Error的差别

Java中异常的抽象类是Throwable,在此基础上.派生出两大类:Error和Exception. Error是程序中的严重错误,不应该用try-catch包括.Javadoc的说明例如以下: An Error is a subclass of Throwable that indicates serious problems that a reasonable application should not try to catch. Most such errors are abnorma

Java Exception和Error的区别

Java中异常的抽象类是Throwable,在此基础上,派生出两大类:Error和Exception. Error是程序中的严重错误,不应该用try-catch包括.Javadoc的说明如下: An Error is a subclass of Throwable that indicates serious problems that a reasonable application should not try to catch. Most such errors are abnormal

Java的Exception和Error面试题10问10答

在Java核心知识的面试中,你总能碰到关于 处理Exception和Error的面试题.Exception处理是Java应用开发中一个非常重要的方面,也是编写强健而稳定的Java程序的关键,这自然使它成为面试题中的常客.关于Java中Error和Exception的面试题目多是关于Exception和Error的概念,如何处理Exception,以及 处理Exception时需要遵守的最佳实践等等.尽管关于多线程.垃圾回收.JVM概念和面向对象设计等方面的问题依然主宰着这类面试,你仍然需要为回答

java virtual machine launcher Error:Could not create the Java Virtual Machine. Error:A Fatal exception has occurred,Program will exit.

Error:Could not create the Java Virtual Machine. Error:A Fatal exception has occurred,Program will exit. 出现以上错误信息提示,如下图所示: 然后点击确定弹出以下错误信息 解决办法: 1.判断机子是否安装了Java环境.具体方法网上搜吧,这里还是给小白一个传送门:(设置) 注意设置自己的环境变量:如JAVA_HOME,CLASSPATH,PATH 2.有些程序会有内存设置,有些程序内存设置过大

Kafka中错误:Unrecognized VM option ‘UseCompressedOops’ Error: Clould not create the Java Vritual Machine. Error: A fatal exception has occurres . Program will exit.

错误的描述: 在kafka安装目录下,执行 $ bin/zookeeper-server-start.sh config/zookeeper.properties & Unrecognized VM option ‘UseCompressedOops’ Error: Clould not create the Java Vritual Machine. Error: A fatal exception has occurres . Program will exit. 解决方法: 找到bin/k

谈一谈Java中的Error和Exception

Error和Exception的联系 继承结构:Error和Exception都是继承于Throwable,RuntimeException继承自Exception. Error和RuntimeException及其子类称为未检查异常(Unchecked exception),其它异常成为受检查异常(Checked Exception). Error和Exception的区别 Error类一般是指与虚拟机相关的问题,如系统崩溃,虚拟机错误,内存空间不足,方法调用栈溢出等.如java.lang.S

java中exception和error有什么区别,运行时异常和一般异常有什么区别

1.exception和error都是继承了throwable类,在java中只有throwable类型的实例才可以被抛出(throw)或者捕获(catch),它是异常处理机制的基本组成类型 2.exception和error体现了java平台设计者对不同异常情况的分类.exception是程序正常运行中,可以预料的意外情况,并且应该被捕获,进行相应的处理 3.error是指在正常情况下,不大可能出现的情况,绝大部分的error都会导致程序(比如jvm自身)处于非正常的.不可恢复的状态.既然是非

JAVA Exception处理

原文地址:http://blog.csdn.net/hguisu/article/details/6155636 1. 引子 try-catch-finally恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解.不过,我亲自体验的"教训"告诉我,这个东西可不是想象中的那么简单.听话.不信?那你看看下面的代码,"猜猜"它执行后的结果会是什么?不要往后看答案.也不许执行代码看真正答案哦.如果你的答案是正确,那么这篇文章你就不用浪费时间看啦.

Exception 和 Error 有什么区别么

声明 本篇所涉及的提问,正文的知识点,全都来自于杨晓峰的<Java核心技术36讲>,当然,我并不会全文照搬过来,毕竟这是付费的课程,应该会涉及到侵权之类的问题. 所以,本篇正文中的知识点,是我从课程中将知识点消耗后,用个人的理解.观念所表达出来的文字,参考了原文,但由于是个人理解,因此不保证观点完全正确,也不代表错误的观点是课程所表达的.如果这样仍旧还是侵权了,请告知,会将发表的文章删掉. 当然,如果你对此课程有兴趣,建议你自己也购买一下,新用户立减 30,微信扫码订阅时还可以返现 6 元,相