Java中运行异常和一般异常的区别
展开全部
Exception 是代表了真正实际意义上的异常对象的根基类。Exception 和从它派生而来的所有异常都是应用程序能够捕获到的,并且可以进行异常错误恢复处理的异常类型。
Error 则表示 出现了一个非常严重的异常错误,并且这个错误可能是应用程序所不能恢复的,例如 LinkageError ,或 ThreadDeath 等。由Java虚拟机生成并抛出,Java程序不做处理。
java.long.Error和java.lang.RuntimeException(运行时异常)的子类免于编译时的检查。RuntimeException异常由系统检测,用户的Java 程序可不做处理,系统将它们交给缺省的异常处理程序。
展开全部
运行异常是指你编写的程序是安装JAVA规范写的,不存在语法上的错误,但是在运行中会出现的错误,比如空引用。加载的图片出现问题引起不能被调用等等,也就是说运行异常是在运行是才会出现的异常。一般异常就是包含未定义。未赋值。调用错误。拼写错误等一系列,可以在编写是解决的错误。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不用去在意他们的准确定义,可以这样去理解:
运行时异常:
1、是虚拟机运行过程中遇到的“系统级”问题
2、这些问题在很多地方都能发生,比如ClassNotFound,所以没法去一一要求程序员捕获
非运行时异常,又叫错误:
1、是Java的类库或是程序员自己写的代码发生的异常
2、这些异常是类的开发者预期发生而且主动检测、抛出的,只在特定的位置、时机发生,是要求使用者捕获、处理的。比如IOException,那就是Java的I/O库写代码的时候主动判断文件是否存在等现象,发生现象的时候主动抛出来的,而我们用的时候也要处理它。
但愿你能理解我说的。
运行时异常:
1、是虚拟机运行过程中遇到的“系统级”问题
2、这些问题在很多地方都能发生,比如ClassNotFound,所以没法去一一要求程序员捕获
非运行时异常,又叫错误:
1、是Java的类库或是程序员自己写的代码发生的异常
2、这些异常是类的开发者预期发生而且主动检测、抛出的,只在特定的位置、时机发生,是要求使用者捕获、处理的。比如IOException,那就是Java的I/O库写代码的时候主动判断文件是否存在等现象,发生现象的时候主动抛出来的,而我们用的时候也要处理它。
但愿你能理解我说的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
运行时异常:由java虚拟机抛出的异常。用户不必处理。 而一般异常是用户可以抛出的异常,如果抛出调用必须进行处理。
1,从机制角度来讲:
运行时异常:
在定义方法时不需要声明会抛出runtime exception;
在调用这个方法时不需要捕获这个runtime exception;
runtime exception是从java.lang.RuntimeException或java.lang.Error类衍生出来的。
一般异常:
定义方法时必须声明所有可能会抛出的checked exception;
在调用这个方法时,必须捕获它的checked exception,不然就得把它的exception传递下去;
checked exception是从java.lang.Exception类衍生出来的。
2,从逻辑的角度来说,
运行时异常和一般异常是有不同的使用目的的。一般异常用来指示一种调用方能够直接处理的异常情况。而运行时则用来指示一种调用方本身无法处理或恢复的程序错误。
1,从机制角度来讲:
运行时异常:
在定义方法时不需要声明会抛出runtime exception;
在调用这个方法时不需要捕获这个runtime exception;
runtime exception是从java.lang.RuntimeException或java.lang.Error类衍生出来的。
一般异常:
定义方法时必须声明所有可能会抛出的checked exception;
在调用这个方法时,必须捕获它的checked exception,不然就得把它的exception传递下去;
checked exception是从java.lang.Exception类衍生出来的。
2,从逻辑的角度来说,
运行时异常和一般异常是有不同的使用目的的。一般异常用来指示一种调用方能够直接处理的异常情况。而运行时则用来指示一种调用方本身无法处理或恢复的程序错误。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看看think in Java
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |