Java中的异常处理机制已经比较成熟,我们的Java程序到处充满了异常的可能,如果对这些锋昌耐异常不做预先的处理,那么将来程序崩溃就无从调试,很难找到异常所在的位置。
浙江电脑培训http://www.kmbdqn.cn/将探讨一下Java中异常与错误的处理方法,一起来看看。
异常与错误:异常:在Java中程序的错误主要是语法错误和语义错误,一个程序在编译和运行时出现的错误我们统一称之为异常,它是VM(虚拟机)通知你的一种方式,通过这种方式,VM让你知道,你(开发人员)已经犯了个错误,现在有一个机会来修改银春它。
Java中使用异常类来表迅猛示异常,不同的异常类代表了不同的异常。
但是在Java中所有的异常都有一个基类,叫做Exception。
错误:它指的是一个合理的应用程序不能截获的严重的问题。
大多数都是反常的情况。
错误是VM的一个故障(虽然它可以是任何系统级的服务)。
所以,错误是很难处理的,一般的开发人员(当然不是你)是无法处理这些错误的,比如内存溢出。
和异常一样,在Java中用错误类来表示错误,不同的错误类代表了不同的错误。
但是在Java中所有的错误都有一个基类,叫做Error。
综上,我们可以知道异常和错误最本质的区别就是异常能被开发人员处理而错误时系统本来自带的,一般无法处理也不需要我们程序员来处理。
1.一个异常是在一个程序执行过程中出现的一个事件,它中断了正常指令的运行2.错误,偏离了可接受的代码行为的一个动作或实例异常的结构分类:1、运行时异常(未检查异常)2、编译时异常(已检查异常)运行异常即是RuntimeException其余的全部为编译异常在Java中异常Exception和错误Error有个共同的父类Throwable。
ErrorExceptionruntimeException几个子类1、java.lang.ArrayIndexOutOfBoundsException数组索引越界异常。
当对数组的索引值为负数或大于等于数组大小时抛出。
2、java.lang.ArithmeticException算术条件异常。
譬如:整数除零等。
3、java.lang.NullPointerException空指针异常。
当应用试图在要求使用对象的地方使用了null时,抛出该异常。
譬如:调用null对象的实例方法、访问null对象的属性、计算null对象的长度、使用throw语句抛出null等等4、java.lang.ClassNotFoundException找不到类异常。
当应用试图根据字符串形式的类名构造类,而在遍历CLASSPAH之后找不到对应名称的class文件时,抛出该异常。
.检查程序的配置文件,确保正确配置了资源文件脊凯的路径。2.检查资源文件的格式是否正确,确保资源文件的格式与程序要求猛野乱的格式一致。
3.检查资源文件是否完整,确保所需要的资源文件都存在。
4.检查程序的编译环境,确保已正确安装枝档了 Java 运行环境。
5.检查程序的类路径是否正确
java error是什么,让我们一起了解一下?
error是表示返回对应于已知错误号的错误信息,包括一些严重的程序不能处理的系统错误类,如内存溢出、虚拟机错误、栈溢出等,这类错误一般与硬件有关,与程序本身无关,通常由系统哪悄进行处理,程序本身无法捕获和处理。
在Java中,根据错误性质将运行错误分为两大类:错误和异常(Error与Exception)
那么两者有何区别?
Exception:
1.可以是可被控制(checked) 或不可控制的(unchecked)。
2.表示一个由程序员导致的错误。
3.应该在应用程序级被处理。
Error:
1.总是不可控制的(unchecked)。
2.经常用来用于表示系统错误或低层资源的错误。
3.如何可能的话,应该凯卖在系统级被捕捉。
实战 *** 作IDEA报错【Error:(17, 21) java:程序包javax.servlet不存在】代码如下:
Information:java: Multiple encodings set for module chunk checkcode "GBK" will be used by compiler Information:java: Errors occurred while compiling module 'checkcode' Information:javac 1.8.0_141 was used to compile java sources Information:2019/4/20 10:34 - Compilation completed with 14 errors and 0 warnings in 3 s 716 ms C:\Users\Administrator\Desktop\checkcode\src\com\itstyle\checkcode\Checkcode.java Error:(17, 21) java: 程序包javax.servlet不存在 Error:(18, 26) java: 程序包javax.servlet.http不存在 Error:(19, 26) java: 程序包javax.servlet.http不存在 Error:(20, 26) java: 程序包javax.servlet.http不存在 Error:(25, 32) java: 找不到符号 符号: 类 HttpServlet Error:(31, 27) java: 找不到符号 符号: 类 ServletException 位置: 类 com.itstyle.checkcode.Checkcode
错误原因是:IntelliJ IDEA 没有导入 servlet-api.jar 这个.jar包,需要手动导入。
导入步骤如下:选中项目,右击选择“Open Modules Settings”,选盯缓逗择“Libraries”,点击“+”,选“Java”,在d出的窗口中选择tomcat所在的目录,在lib目录下找到servlet-api.jar这个jar包导入完成即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)