首页编程java编程java编译异常都是有什么区别(java编译异常有哪几个)

java编译异常都是有什么区别(java编译异常有哪几个)

编程之家2023-10-1389次浏览

大家好,关于java编译异常都是有什么区别很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于java编译异常有哪几个的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

java编译异常都是有什么区别(java编译异常有哪几个)

Java之运行时异常与编译时异常区别

Java中用2种方法处理异常:

1.在发生异常的地方直接处理;

2.将异常抛给调用者,让调用者处理。

java编译异常都是有什么区别(java编译异常有哪几个)

Java常见的异常:

(1)编译时异常:Java.lang.Exception

(2)运行期异常:Java.lang.RuntimeException

java编译异常都是有什么区别(java编译异常有哪几个)

Java.lang.Exception和Java.lang.Error继承自Java.lang.Throwable;

Java.lang.RuntimeException继承自Java.lang.Exception.

编译时异常:程序正确,但因为外在的环境条件不满足引发。例如:用户错误及I/O问题----程序试图打开一个并不存在的远程Socket端口。这不是程序本身的逻辑错误,而很可能是远程机器名字错误(用户拼写错误)。对商用软件系统,程序开发者必须考虑并处理这个问题。Java编译器强制要求处理这类异常,如果不捕获这类异常,程序将不能被编译。

运行期异常:这意味着程序存在bug,如数组越界,0被除,入参不满足规范.....这类异常需要更改程序来避免,Java编译器强制要求处理这类异常。

异常(Exception)分几种类型有什么区别写出几个常见异常。

Java中的异常(Exception)又称为例外,是一个在程序执行期间发生的事件,它中断正在执行的程序的正常指令流。为了能够及时有效地处理程序中的运行错误,必须使用异常类。

异常主要分为以下两种异常。

1、运行时异常都是 RuntimeException类及其子类异常,如

NullPointerException、IndexOutOfBoundsException

等,这些异常是不检查异常,程序中可以选择捕获处理,也可以不处理。这些异常一般由程序逻辑错误引起,程序应该从逻辑角度尽可能避免这类异常的发生。

2、非运行时异常是指 RuntimeException

以外的异常,类型上都属于 Exception类及其子类。程序就不能编译通过。IOException和ClassNotFoundException等以及用户自定义的 Exception异常,一般情况下不自定义检查异常。

扩展资料

java的exception机制:

早期的C语言的异常处理机制,通常是我们人为的对返回结果加一些标志来进行判定,比如发生错误返回什么标志,正常情况下我们又是返回什么标记,而这些都不是语言本身所赋予我们的,这种机制的问题在于,C语言的异常处理机制全是我们人为的定义。

这样就会造成业务逻辑的主线受到异常处理的牵制,或者说是我们难免会将注意力转移,并且造成业务逻辑与异常处理之间有很大程度上的缠绕。

参考资料来源:百度百科-异常

java中异常与错误有什么区别

在Java.lang软件包中有一个java.lang.Throwable类,这个类是java中所有错误和异常的超类。

顾名思义,这个类(以及子类)的实例可以通过JVM或者java的throw语句抛出。而catch子句的参数也只能是Throwable类型(或者其子类型)。

Throwable类有两个子类,Error与 Exception。

错误与异常都是在程序编译和运行时出现的错误。不同的是,异常可以被开发人员捕捉和处理;而错误一般是系统错误,一般不需要开发人员处理(也无法处理),比如内存溢出。

Exception是java中所有异常的基类。在java中异常被分为两大类,编译时异常和运行时异常。

编译时异常是由于外在条件不满足而引发的,比如程序视图打开一个并不存在的远程Socket端口。这种异常是可预知的。编译器强制要求对编译时异常进行捕获或声明。

运行时异常往往是系统错误,比如数组下标越界等。通常我们可以不做处理,系统会把它们交给缺省的异常处理程序。有人说在运行时异常出现后,异常会被一层层向上抛直到找到处理代码,如果我们没有处理运行时异常,异常会被抛到最上层然后抛出,从而导致最上层程序或线程退出。

Error是java中所有错误的基类。错误通常是我们无法处理的,绝大多数情况下,我们不应该试图捕获错误。

java编译异常有哪几个

编译异常是Exception下除了RuntimeException及其子类以外的所有子类

Java提供了两类主要的异常:RuntimeException和CheckedException.

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

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

不管是不是RuntimeException只要有异常而且你还没try/ catch那他一定会中断执行非RuntimeException在编译的时候编译器会帮你检查有没有正确、完整的try/ catch如果没有编译不过 RuntimeException在编译的时候不检查

参考自:http://m.blog.csdn.net/blog/zhou1216141078/12921609

好了,关于java编译异常都是有什么区别和java编译异常有哪几个的问题到这里结束啦,希望可以解决您的问题哈!

java什么是持久化(什么是持久化)短道速滑男子1500米(短道速滑男子1500米冠军)