开发者社区> ghost丶桃子> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Java千百问_04异常处理(008)_java中常见的错误有哪些

简介:
+关注继续查看

java中常见的错误有哪些

想了解异常看这里:什么是java中的异常 
常见的运行时异常看这里:常见的Java异常有哪些(运行时) 
常见的非运行时异常看这里:常见的java异常有哪些(非运行时) 
Java中除了异常Exception之外,还有一大类错误,即ERROR,我们常见的ERROR如下:

1、java.lang.Error

错误。是所有错误的基类,用于标识严重的程序运行问题。这些问题通常描述一些不应被应用程序捕获的反常情况。 
原因:

  1. 对系统所访问外部资源,未执行关闭操作,导致外部资源大量浪费,最终可-能导致系统无法正常运行;
  2. 对系统所访问的外部资源关闭次数太多,外部系统无法正常处理;
  3. 系统访问的外部资源出现异常情况。

解决方案:

  1. 访问外部资源前,首先检查该资源(如数据库)是否可正常连接或操作。
  2. 访问外部资源时,如果进行了连接,一定进行关闭操作,并仅进行一次关闭操作。
  3. 尽量在同一操作中共享外部资源,以减少该操作对资源的消费,提高程序的执行效率。

2、java.lang.AbstractMethodError

抽象方法错误。当应用试图调用抽象方法时抛出。

3、java.lang.AssertionError

断言错。用来指示一个断言失败的情况。

4、java.lang.ClassCircularityError

类循环依赖错误。在初始化一个类时,若检测到类之间循环依赖则抛出该异常。

5、java.lang.ClassFormatError

类格式错误。当Java虚拟机试图从一个文件中读取Java类,而检测到该文件的内容不符合类的有效格式时抛出。

6、java.lang.ExceptionInInitializerError

初始化程序错误。当执行一个类的静态初始化程序的过程中,发生了异常时抛出。静态初始化程序是指直接包含于类中的static语句段。

7、java.lang.IllegalAccessError

违法访问错误。当一个应用试图访问、修改某个类的域(Field)或者调用其方法,但是又违反域或方法的可见性声明,则抛出该异常。

8、java.lang.IncompatibleClassChangeError

不兼容的类变化错误。当正在执行的方法所依赖的类定义发生了不兼容的改变时,抛出该异常。一般在修改了应用中的某些类的声明定义而没有对整个应用重新编译而直接运行的情况下,容易引发该错误。

9、java.lang.InstantiationError

实例化错误。当一个应用试图通过Java的new操作符构造一个抽象类或者接口时抛出该异常.

10、java.lang.InternalError

内部错误。用于指示Java虚拟机发生了内部错误。

11、java.lang.LinkageError

链接错误。该错误及其所有子类指示某个类依赖于另外一些类,在该类编译之后,被依赖的类改变了其类定义而没有重新编译所有的类,进而引发错误的情况。

12、java.lang.NoClassDefFoundError

未找到类定义错误。当Java虚拟机或者类装载器试图实例化某个类,而找不到该类的定义时抛出该错误。

13、java.lang.NoSuchFieldError

域不存在错误。当应用试图访问或者修改某类的某个域,而该类的定义中没有该域的定义时抛出该错误。

14、java.lang.NoSuchMethodError

方法不存在错误。当应用试图调用某类的某个方法,而该类的定义中没有该方法的定义时抛出该错误。

15、java.lang.OutOfMemoryError

内存不足错误。当可用内存不足以让Java虚拟机分配给一个对象时抛出该错误。

16、java.lang.StackOverflowError

堆栈溢出错误。当一个应用递归调用的层次太深而导致堆栈溢出时抛出该错误。

17、java.lang.ThreadDeath

线程结束。当调用Thread类的stop方法时抛出该错误,用于指示线程结束。

18、java.lang.UnknownError

未知错误。用于指示Java虚拟机发生了未知严重错误的情况。

19、java.lang.UnsatisfiedLinkError

未满足的链接错误。当Java虚拟机未找到某个类的声明为native方法的本机语言定义时抛出。

20、java.lang.UnsupportedClassVersionError

不支持的类版本错误。当Java虚拟机试图从读取某个类文件,但是发现该文件的主、次版本号不被当前Java虚拟机支持的时候,抛出该错误。

21、java.lang.VerifyError

验证错误。当验证器检测到某个类文件中存在内部不兼容或者安全问题时抛出该错误。

22、java.lang.VirtualMachineError

虚拟机错误。用于指示虚拟机被破坏或者继续执行操作所需的资源不足的情况。

原文地址:http://blog.csdn.net/ooppookid/article/details/51145928

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
java: 错误: 无效的源发行版:15
java: 错误: 无效的源发行版:15
0 0
Java编程之错误
Java核心思想 面向对象的编程思想 类和类的关系 类中成员的描述 对象创建 Java工具类 包装类 数学相关 日期相关 字符串相关 集合相关的类 考试机 学生 老师 异常/错误 程序运行过程中,可能会发生一些不被期望的效果, 肯定会阻止我们的程序按照指令去执行 这种不被预期出现的效果,肯定需要抛出来告诉我们 在Java中有一个定义好的规则Throwable(可以抛出的) Error错误 通常是一些物理性的,JVM虚拟机本身出现的问题,程序指令是处理不了的 Exception
0 0
记录一次Java递归调用导致java.lang.StackOverflowError错误
通过递归调用每次查询500条数据的id,再通过id删除记录的方式,数据量一大,导致递归过深,栈帧数超出虚拟栈深度,虚拟机栈过多,报java.lang.StackOverflowError错误。
0 0
Java初学者一定要注意的问题,这些错误你犯过哪些?永远不要停止学习。
Java初学者一定要注意的问题,这些错误你犯过哪些?永远不要停止学习。
0 0
【问题一】notepad++编辑器写Java代码,无法编译出现错误:编码GBK的不可映射字符
今天在学习“流程控制”一节,用notepad++写代码时,一直报错,无法编译。看了好多遍代码,代码完全正确,非常纳闷。
0 0
关于Java/Android开发中常见异常错误汇总___知识导图分享
注: 1.若博客图片不清晰,可以鼠标点击图片查看,或者下载到电脑中查看,也可以留言给我,发你高清原图。希望对热爱学习的朋友有帮助! 2.这是汇总的关于Java/Android开发中常见的异常、错误,绘制导图如下:
0 0
编写Java程序_输入本部门五位员工的薪资,并根据用户输入的序号为指定员工进行提薪。若用户输入序号出现越界,则提示错误。
编写Java程序_输入本部门五位员工的薪资,并根据用户输入的序号为指定员工进行提薪。若用户输入序号出现越界,则提示错误。
0 0
Appium问题解决方案(6)- Java堆栈错误:java.lag.ClassNotFoundException:org.eclipse.swt.widets.Control
Appium问题解决方案(6)- Java堆栈错误:java.lag.ClassNotFoundException:org.eclipse.swt.widets.Control
0 0
(已解决)MAC JAVA错误:Cocoa AWT: Not running on AppKit thread 0 when expected
(已解决)MAC JAVA错误:Cocoa AWT: Not running on AppKit thread 0 when expected
0 0
编译JAVA的错误: 编码ascii的不可映射字符
编译JAVA的错误: 编码ascii的不可映射字符
0 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Java基础入门(四)-泛型、反射、注解
立即下载
JAVA反射原理以及一些常见的应用
立即下载
《〈Java开发手册(嵩山版)〉灵魂15问》
立即下载