首页 > 编程语言 >JAVA项目常用异常处理汇总

JAVA项目常用异常处理汇总

时间:2023-10-19 20:47:35浏览次数:38  
标签:lang 常用 JAVA 错误 方法 汇总 数组 java 异常

1.空指针异常(java.lang.nullpointerexception)

 

发生该情况一般是字符串变量未初始化,数组未初始化,类对象未初始化等。还有一种情况是当该对象为空时你并没有判断是否为空值,这个错误我在之前的web习题上犯过,因此为了避免这种情况,除了检查是否初始化之外,如有必要则要加上判断是否为null的if语句。

 

  2.指定的类不存在(java.lang.ClassNotFoundException)

 

出现这个错误的原因之一是缺包,这时只要下载并导入相应的包即可;当我们已经把包导入的时候,又报了这种错误的情况下,就需要开启自己的编辑器去调整设置了;在使用tomcat的时候,先检查lib中是否导入了jar。

 

  3.字符串转换为数字异常(java.lang.NumberFormatException)

 

这个错误就是字符串中出现非数字型字符时,转换为数字时发生异常;除此之外,如果字符串转换为数字时超过了类型的范围(比如string转int和string转double),也会出现这个错误。解决该问题的方法就是在转换之前先对字符串进行检查。

 

4.数组下标越界异常(java.lang.IndexOutOfBoundsException)

 

顾名思义,你想取的数组元素在数组中并没有定义出来,比如定义了一个长度为5的数组a,当你想取a[6]元素时肯定会出错。解决这类问题就是要注意数组的长度,有时候为了减少空间浪费我们会使用动态数组构建方法,这时在对数组进行操作时建议先用length获取其数组长度,从而规避错误。

 

  5.数学运算异常(java.lang.ArithmeticException)

 

除数为0时会报出该错误,解决方法:避免除数为0。这个错误解读为“出现异常的运算条件”,除了除数为0的情况之外,可能还有其他的异常情况,届时具体情况具体分析。

 

  6.没有访问权限(java.lang.IllegalAccessException)

 

权限问题,在程序访问某方法时注意一下访问权限即可(public/private),这种错误在使用package时容易发生。

 

  7.方法的参数错误(java.lang.IllegalArgumentException)

 

在调用带有参数的方法时,请注意传递的参数是否正确。

 

  8.数据类型转换异常(java.lang.ClassCastException)

 

在进行强制类型转换时容易发生该错误,在进行转换前先对类型进行判别,规避错误。

 

 9.文件未找到异常(java.lang.FileNotFoundException)

 

当程序试图打开一个不存在的文件进行读写操作时会报出该错误,通常由FileInputStream,FileOutputStream,RandomAccessFile的构造器声明发出,即使文件存在,但因某个原因无法访问,也会报出该错误。

 

  10.数组存储异常(java.lang.ArrayStoreException)

 

假如在int型数组里存入string类型的变量,就会报错,解决方案是在存入对象时查明类型,或者在存入前先进行类型转换。

 

  11.方法不存在异常(java.lang.NoSuchMethodException)

 

程序所要调用的方法不存在。解决方法:不调用或者构造其方法。

 

  12.文件已结束异常(java.lang.EOFException)

 

程序输入过程中遇到文件或流的结尾引发该异常,此异常用于检查是否达到文件或流结尾。

 

  13.实例化异常(java.lang.InstantiationException)

 

类创建新对象时无法通过构造器进行实例化引发的异常。解决方案:构造方法。

 

 14.被中止异常(java.lang.InterruptedException)

 

通过其他线程的Thread的interrupt方法中止另一个线程时报出的错误。解决方法:一,不做处理,直接抛出;二,捕获异常,再次调用interrupt方法,将中断状态重新设置为true。

 

  15.不支持克隆异常(java.lang.CloneNotSupportedException)

 

如果没有实现Cloneable接口便调用了clone方法,报出该错误;若类不支持Cloneable接口,调用时也会出现该错误。解决方法:实现Cloneable接口。

 

  16.输入输出异常(IOException)

 

该异常为Exception的一个分支,通常发生在文件的数据读写上。

 

  17.错误(java.lang.Error)

 

所有错误的基类,用于标识严重的程序运行问题。通常原因是访问外部资源时出现一系列问题,解决方案也需要围绕访问外部资源这一重点展开。

 

标签:lang,常用,JAVA,错误,方法,汇总,数组,java,异常
From: https://www.cnblogs.com/leapssisbird/p/17775566.html

相关文章

  • Java拾贝第六天——匿名内部类
    Java拾贝不建议作为0基础学习,都是本人想到什么写什么匿名内部类匿名对象没忘吧?newPerson();//语法同匿名内部类匿名内部类就是匿名的局部内部类,地位同局部变量。有两种形式:基于接口的匿名内部类,基于类的匿名内部类基于接口的匿名内部类常规方式实现接口并重写其方法publ......
  • JAVA项目中的常用的异常处理情况
    #Java项目中常用的异常处理情况Java是一种强类型、面向对象的编程语言,它具有丰富的异常处理机制。异常处理是编写健壮、可靠和可维护的Java代码的关键组成部分。在Java项目中,处理异常的方式通常包括:##1.try-catch-finally块try-catch-finally是Java中最常见的异常处理机......
  • pom.xml常用配置(六)
    SpringCloudSpringCloudDependencies<properties><spring-cloud.version>Hoxton.SR3</spring-cloud.version></properties><dependencyManagement><dependencies><!--添加springcloud家族依赖-->&......
  • Java有哪些保证原子性的方法?如何保证多线程下i++ 结果正确?什么是原子操作类?
    使用循环原子类,例如AtomicInteger,实现i++原子操作使用juc包下的锁,如ReentrantLock,对i++操作加锁lock.lock()来实现原子性使用synchronized,对i++操作加锁原子操作类当程序更新一个变量时,如果多线程同时更新这个变量,可能得到期望之外的值,比如变量i=1,A线程更新i+1,B线程也更新i+1,经......
  • JavaScript内置对象和DOM
    数组数组遍历/* 数组遍历的方法 1.for循环遍历数组下标输出 2.forEach遍历forEach(function(item,index,arr)) 3.filter(function(item,index,arr))返回一个新数组,回调函数返回true的结果会保存在新数组中 4.map(function(item,index,arr)) 返回一个新数组,回调函数retur......
  • [Java]Java初学之多线程01
    Intro写完上一篇博客就立刻开始了Java多线程的学习学习这个东西还是得趁热打铁,一两天不学感觉知识要从脑子里流走了(不要啊(≧□≦)ノ)就是这样,这篇文章主要集中在Java多线程的相关内容,可能会分篇写。正文程序(Program)、进程(Process)、线程(Thread)在正式学习内容之前,我觉得先......
  • 基于Java Web的多功能旅游网站的设计与实现-计算机毕业设计源码+LW文档
    摘 要 随着时代的发展,人们对旅游也越来越重视,近些年来我国的旅游产业也发生了翻天覆地的变化,但是很多人在出去旅游的时候不知道去哪里旅游,在预订酒店和机票的时候也没有一个综合性的旅游网站,为了让人们的旅游变的更加的方便,为此我开发了本基于JavaWeb的多功能旅游网站本基于......
  • 基于Java的智慧图书管理系统-计算机毕业设计源码+LW文档
    摘要随着时代的发展,图书的重要性显示的越来越突出了,尤其是知识大爆炸的这个年代,人们需要掌握的知识也越来越多,只有不断的提高自己才能够更好的立足于社会,但是通常情况下很多图书的价格比较高,这个时候就可以通过图书馆借阅图书来达到图书阅读的目的,为了让图书借阅变的更加的方便我......
  • java生成Excel文件
    版本一:importorg.apache.poi.ss.usermodel.*;importorg.apache.poi.xssf.usermodel.XSSFWorkbook;importjava.io.ByteArrayOutputStream;importjava.io.FileOutputStream;importjava.io.IOException;importjava.util.ArrayList;importjava.util.HashMap;import......
  • iptables常用命令
    iptables是用于配置Linux系统中的防火墙规则的命令行工具。其命令格式和常用参数的意思如下:iptables[选项]<链名><规则规范>常用选项:-A:添加规则到指定链的末尾。-D:从指定链中删除规则。-I:插入规则到指定链的开头。-L:列出指定链的规则。-F:清除指定链中的所有规则。-P:......