常见JAVA运行时异常有哪些?

如题所述

1、五种常见的异常:ClassCastException(类转换异常)、IndexOutOfBoundsException(数组越界异常)、NullPointerException(空指针异常)、ArrayStoreException(数据存储异常,操作数组时类型不一致)、BufferOverflowException(还有IO操作的,缓冲溢出异常)。

2、java运行时异常是可能在java虚拟机正常工作时抛出的异常。java提供了两种异常机制。一种是运行时异常(RuntimeExepction),一种是检查式异常(checked execption)。

检查式异常:我们经常遇到的IO异常及sql异常就属于检查式异常。对于这种异常,java编译器要求我们必须对出现的这些异常进行catch 所以 面对这种异常不管我们是否愿意,只能自己去写一堆catch来捕捉这些异常。

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


扩展资料:

Java特点

Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。例如,Java不支持go to语句,代之以提供break和continue语句以及异常处理。Java还剔除了C++的操作符过载和多继承特征,并且不使用主文件,免去了预处理程序。

因为Java没有结构,数组和串都是对象,所以不需要指针。Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。

参考资料:百度百科-Java

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2019-09-19

java异常发生的原因有很多,通常包含以下几大类:

1、用户输入了非法数据。

2、要打开的文件不存在。

3、网络通信时连接中断,或者JVM内存溢出。

这些异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的。

要理解Java异常处理是如何工作的,你需要掌握以下三种类型的异常:

1、检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的。例如要打开一个不存在文件时,一个异常就发生了,这些异常在编译时不能被简单地忽略。

2、运行时异常: 运行时异常是可能被程序员避免的异常。与检查性异常相反,运行时异常可以在编译时被忽略。

3、错误: 错误不是异常,而是脱离程序员控制的问题。错误在代码中通常被忽略。例如,当栈溢出时,一个错误就发生了,它们在编译也检查不到的。

扩展资料

java异常处理

1、处理异常。针对该异常采取一些行动,例如修正问题、提醒某个人或进行其他一些处理,要根据具体的情形确定应该采取的动作。再次说明,调用printStackTrace算不上已经“处理好了异常”。

2、重新抛出异常。处理异常的代码在分析异常之后,认为自己不能处理它,重新抛出异常也不失为一种选择。

3、把该异常转换成另一种异常。大多数情况下,这是指把一个低级的异常转换成应用级的异常(其含义更容易被用户了解的异常)。

4、不要捕获异常。

参考资料:百度百科:异常处理

本回答被网友采纳
第2个回答  推荐于2019-10-29

1、主线程java.lang.UnsupportedClassVersionError中的异常:

当您的java类是从另一个JDK版本编译并且您尝试从另一个Java版本运行它时,会出现此异常。

2、主线程java.lang.NoClassDefFoundError中的异常:

此异常有两种变体。第一个是您提供类全名和.class扩展名的地方。第二种情况是找不到Class。

3、主线程java.lang.NoSuchMethodError中的异常:

main:当您尝试运行没有main方法的类时会出现此异常。

4、线程“main”中的异常java.lang.ArithmeticException:

每当从main方法抛出任何异常时,它都会打印异常是控制台。第一部分解释了从main方法抛出异常,第二部分打印异常类名,然后在冒号后打印异常消息。

5、java.lang.ClassNotFoundException 

异常的解释是"指定的类不存在",这里主要考虑一下类的名称和路径是否正确即可  

6、java.lang.NoSuchMethodError   

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

7、 java.lang.IndexOutOfBoundsException     

索引越界异常。当访问某个序列的索引值小于0或大于等于序列大小时,抛出该异常。  

扩展资料:

Java异常处理最佳实践

    使用特定异常以便于调试。

    在程序中尽早抛出异常(Fail-Fast)。

    在程序后期捕获异常,让调用者处理异常。

    使用Java 7 ARM功能确保资源已关闭或使用finally块正确关闭它们。

    始终记录异常消息以进行调试。

    使用multi-catch块清洁关闭。

    使用自定义异常从应用程序API中抛出单一类型的异常。

    遵循命名约定,始终以Exception结束。

    记录在javadoc中使用@throws的方法抛出的异常。

    异常是昂贵的,所以只有在有意义的时候抛出它。否则,您可以捕获它们并提供空或空响应。

参考资料来源:百度百科——Exception

参考资料来源:百度百科——异常处理

本回答被网友采纳
第3个回答  推荐于2019-08-12

1,java.lang.NullPointerException 

这个异常的解释是 "程序遇上了空指针 ",简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在创建图片,调用数组这些操作中,比如图片未经初始化,或者图片创建时的路径错误等等。

2,java.lang.ClassNotFoundException 

异常的解释是"指定的类不存在",这里主要考虑一下类的名称和路径是否正确即可  

3,java.lang.ArrayIndexOutOfBoundsException 

这个异常的解释是"数组下标越界",现在程序中大多都有对数组的操作,因此在调用数组的时候一定要认真检查,看自己调用的下标是不是超出了数组的范围,一般来说,显示(即直接用常数当下标)调用不太容易出这样的错,但隐式(即用变量表示下标)调用就经常出错了.

4,java.lang.NoSuchMethodError   

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

5,java.lang.IndexOutOfBoundsException     

索引越界异常。当访问某个序列的索引值小于0或大于等于序列大小时,抛出该异常。  

6,java.lang.NumberFormatException     

数字格式异常。当试图将一个String转换为指定的数字类型,而该字符串确不满足数字类型要求的格式时,抛出该异常。

7,java.sql.SQLException 

Sql语句执行异常

8,java.io.IOException 

输入输出异常 

9,java.lang.IllegalArgumentException 

方法参数错误

10java.lang.IllegalAccessException 

无访问权限异常

扩展资料:

Java技术应用领域:

1、Android应用

许多的 Android应用都是Java程序员开发者开发。虽然 Android运用了不同的JVM以及不同的封装方式,但是代码还是用Java语言所编写。相当一部分的手机中都支持JAVA游戏,这就使很多非编程人员都认识了JAVA。

2、在金融业应用的服务器程序

Java在金融服务业的应用非常广泛,很多第三方交易系统、银行、金融机构都选择用Java开发,因为相对而言,Java较安全 。大型跨国投资银行用Java来编写前台和后台的电子交易系统,结算和确认系统,数据处理项目以及其他项目。

3、网站

Java 在电子商务领域以及网站开发领域占据了一定的席位。开发人员可以运用许多不同的框架来创建web项目,SpringMVC,Struts2.0以及frameworks。即使是简单的 servlet,jsp和以struts为基础的网站在政府项目中也经常被用到。例如医疗救护、保险、教育、国防以及其他的不同部门网站都是以Java为基础来开发的。

4、嵌入式领域

Java在嵌入式领域发展空间很大。在这个平台上,只需130KB就能够使用Java技术(在智能卡或者传感器上)。

5、大数据技术

Hadoop以及其他大数据处理技术很多都是用Java,例如Apache的基于Java的HBase和Accumulo以及 ElasticSearchas。

6、高频交易的空间

Java平台提高了这个平台的特性和即使编译,他同时也能够像 C++ 一样传递数据。正是由于这个原因,Java成为的程序员编写交易平台的语言,因为虽然性能不比C++,但开发人员可以避开安全性,可移植性和可维护性等问题。

7、科学应用

Java在科学应用中是很好选择,包括自然语言处理。最主要的原因是因为Java比C++或者其他语言相对其安全性、便携性、可维护性以及其他高级语言的并发性更好。

本回答被网友采纳
第4个回答  推荐于2019-08-02

常见JAVA运行时异常有:

1、ArithmeticException - 算术运算中,被0除或模除。

2、ArrayIndexOutOfBoundsException - 数组越界访问。

3、ArrayStoreException - 数据存储异常,写数组操作时,对象或数据类型不兼容。

4、ClassCastException - 类型转换异常。

5、IllegalArgumentException - 方法的参数无效。

6、IllegalThreadStateException - 试图非法改变线程状态,比方说试图启动一已经运行的线程。

7、NullPointerException - 试图访问一空对象的变量、方法或空数组的元素。

8、NumberFormatException - 数据格式异常,试图把一字符串非法转换成数值(或相反)。

9、SecurityException - 如果Applet试图执行一被WWW浏览器安全设置所禁止的操作。

10、IncompatibleClassChangeException - 如改变了某一类定义,却没有重新编译其他引用了这个类的对象。

如某一成员变量的声明被从静态改变为非静态,但其他引用了这个变量的类却没有重新编译,或者相反。

如删除了类声明中的某一域或方法,但没有重新编译那些引用了这个域或方法的类。

11、OutOfMemoryException - 内存不足,通常发生于创建对象之时。

12、NoClassDefFoundException - JAVA运行时系统找不到所引用的。

13、IncompatibleTypeException - 试图实例化一个接口,Java运行时系统将抛出这个异常。

14、UnsatisfiedLinkException - 如果所需调用的方法是C函数,但Java运行时系统却无法连接这个函数。

15、InternalException - 系统内部故障所导致的异常情况,可能是因为Java运行时系统本身的原因。

如果发现一可重现的InternalException,可以直接给Sun公司发电邮java@java.Sun.com。

扩展资料:

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。

Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。

Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等 。

JDK(Java Development Kit)称为Java开发包或Java开发工具,是一个编写Java的Applet小程序和应用程序的程序开发环境。

JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一些Java工具和Java的核心类库(Java API)。不论什么Java应用服务器实质都是内置了某个版本的JDK。

主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如,IBM公司开发的JDK,BEA公司的Jrocket,还有GNU组织开发的JDK 。

另外,可以把Java API类库中的Java SE API子集和Java虚拟机这两部分统称为JRE(JAVA Runtime Environment),JRE是支持Java程序运行的标准环境 。

JRE是个运行环境,JDK是个开发环境。因此写Java程序的时候需要JDK,而运行Java程序的时候就需要JRE。而JDK里面已经包含了JRE,因此只要安装了JDK,就可以编辑Java程序,也可以正常运行Java程序。

但由于JDK包含了许多与运行无关的内容,占用的空间较大,因此运行普通的Java程序无须安装JDK,而只需要安装JRE即可 。

参考资料:百度百科-Java攻略:Java常见问题的简单解法

本回答被网友采纳

java 运行时异常有哪些
Java运行时异常主要有以下几种:1. NullPointerException(空指针异常)当程序试图访问或修改一个空对象的属性或调用其方法时,就会抛出此异常。例如,调用一个未初始化的对象的方法或访问一个不存在的数组元素。2. ClassCastException(类转换异常)当一个对象被强制转换为不兼容的类型时,会抛出此异常。...

常见JAVA运行时异常有哪些?
1、五种常见的异常:ClassCastException(类转换异常)、IndexOutOfBoundsException(数组越界异常)、NullPointerException(空指针异常)、ArrayStoreException(数据存储异常,操作数组时类型不一致)、BufferOverflowException(还有IO操作的,缓冲溢出异常)。2、java运行时异常是可能在java虚拟机正常工作时抛出的异常。java...

java异常类有哪些
Java异常类主要有以下几种:1. 检查型异常:这类异常通常是可以预知的,并且在编译期间会被检查。常见的检查型异常包括IOException、FileNotFoundException等。这些异常在编程过程中是必须处理的,如果不处理,编译器会报错。2. 运行时异常:这类异常通常是由于程序中的错误导致的,如逻辑错误或系统状态错误...

Java异常处理
1、非运行时异常(编译异常):需要在编译时处理的异常,即在方法声明中必须显式声明或捕获这些异常。常见的检查异常包括IOException、SQLException等。2、运行时异常(RuntimeException):无需在编译时处理的异常,即编译器不强制要求捕获或声明这些异常。常见的运行时异常包括NullPointerException、IllegalArgume...

运行时异常是必须进行处理的异常否则程序
运行时异常通常是程序在运行时遇到的错误或者逻辑问题,比如数组索引越界、空指针引用等。这些异常的发生往往是由于程序的错误逻辑或者不完善的代码造成的。如果运行时异常没有进行适当的处理,程序可能会崩溃、出现错误结果,甚至导致整个系统停止运行。尽管运行时异常不要求强制进行异常处理,但良好的编程实践...

常见的java异常有哪些?都是什么意思?
11、OutOfMemoryException - 内存不足,通常发生于创建对象之时。12、NoClassDefFoundException - JAVA运行时系统找不到所引用的类。13、IncompatibleTypeException - 试图实例化一个接口,Java运行时系统将抛出这个异常。14、UnsatisfiedLinkException - 如果所需调用的方法是C函数,但Java运行时系统却无法连接...

java的异常分类有哪些?
异常分类如下:1. **Throwable类**:这是所有异常和错误的超类,它分为两个主要子类:错误(Error)和异常(Exception)。2. **Exception类**:这个类进一步分为运行时异常(RuntimeException)和非运行时异常(Checked Exception)。3. **运行时异常(RuntimeException)**:这类异常发生在程序运行时,包括...

java运行时异常有哪些
常见的五种异常:1、ClassCastException(类转换异常)2、IndexOutOfBoundsException(数组越界)3、NullPointerException(空指针)4、ArrayStoreException(数据存储异常,操作数组时类型不一致)5、还有IO操作的BufferOverflowException异常

Java编程中 常见的异常有哪几种
常见的运行时异常:RuntimeException:运行时异常NullPointerException:空指针异常 ArrayIndexOutofBoundsException:数组越界异 ClassCastException:类型转换异常IllegalArgumentException:非法的参数异常InputMismatchException:输入不匹配 以上是常见的一些异常,另外还有别的异常,参见文件:Java.lang.Throwable....

Java 常见的异常有哪几种,有什么区别
NullPointerException: 空指针异常。菜鸟编程经验发现这个异常是经常会发生的,属于运行时异常。2.ClassCastException: 类型强制转换异常。Java的一些语法知识不太熟悉的时候会发生的异常。3.ArrayIndexOutOfBoundsException: 数组下标越界异常。特别常见的一个异常,粗心的程序员都会犯的错误。4.Arithmetic...

相似回答