Java异常处理的几个原则如下。
      1)不要丢弃异常,捕获异常后需要进行相关处理。如果用户觉得不能很好地处理该异常,就让它继续传播,传到别的地方去处理,或者把一个低级的异常转换成应用级的异常,重新抛出。
      (2)catch语句应该指定具体的异常类型。不要把不该捕获的异常也捕获了
      (3)在finally里面释放资源。如果finally里面也会抛出异常,也一样需要使用try..catch处理。
      (4)不要把大量的代码塞在try...catch块里面,分离各个可能出现异常的语句并分别捕获异常。
      (5)由于异常可能导致输出的数据不完整,因此用户需要作出相应处理,至少应该提示该数据的不完整

一:Exception异常层次结构的根类

解决方法:

二:RuntimeException许多java.lang异类的基类

解决方法:1.在eclipse里面,project->Generate javadoc菜单,在第三个对话框的Extra Javadoc options文本框里面加上 -encoding UTF-8 参数之后,此现象就消失了

2.临时)在控制面板中将区域与语言选项中,把当地语言设为英语

3.将要输入文件的东西,输入后台的数据改成全英文,也可以解决。

三:ArithmeticException算术错误情形

解决方法:仔细阅读程序中是否有涉及到算术问题,算术中是不是未考虑到除0的情况。

四:IllegalArgumentException方法接收到非法参数

解决方法:1.可能是接收到的参数非法,或者程序源代码没有错误的话就是配置的问题才会导致数据传输不过来,可能是配置文件的问题,也有可能是环境配置的问题,例如你的文件路径跟你从svn上的路径不对也会导致这个问题。

五:ArrayIndexOutOfBoundException数组大小小于或大于实际的数组大小

解决方法:仔细阅读源程序有关于涉及到数组的定义和使用,有没有出现数组的下标小于数组大小或者数组下标大于等于数组大小

六:NullPointerException尝试访问NULL对象成员

解决方法:这个异常一般是方法内部成员没有赋值造成的。使用debug模式查看,会发现该成员的值显示的是Null.对null成员做任何操作都会报这个异常错误。所以在做之前需要做非空判断。

七:ClassNotFoundException不能加载所需的类

解决方法:ClassNotFoundException异常后面跟的就是找不见的类路径。可以通过“CTRL+SHIFT+T”,之后再弹出的对话框中输入类路径,看看此类是否存在。
如果存在的话,直接在报错的类中通过“import 类路径”的形式引入即可。
如果不存在的话,那么只能是去创建此类,或者引入相应的jar包进行解决了。

八:NumberFormatException数字转化格式异常

解决方法: 主要原因是将用户提交的内容转换为整数或者浮点数时用户输入了其它非法字符。在需要进行转换的地方使用try/catch块捕获此异常然后提示用户输入合法数据。

也可以看下边的错误堆栈,找出自己写的类在哪一行出现错误,然后定位的找到错误的行,在什么时候执行哪一条语句出现的错误,就可以相应的用try/catch捕获解决解决。

九:FileNotFoundException找不到文件

解决方法:1.可能是父路径缺乏,或者文件没有创建。可以加一个判断。

2.文件没创建

String localPath =path+name;

File file =new File(localPath);

try {

//假如文件不存在,需创建

if(!file.exists()){

file.createNewFile();

}

特别注意的是文件创建的是.TXT文本,要在文件名或者文件目录填写的时候,将文件名后缀加上,将.TXT加上。

十:EOFException文件结束,EOFException表示输入过程中意外地到达文件尾或流尾的信号,导致异常。

出现ArithmeticException异常,由于出现了除0的现象而导致的。

当有多层嵌套的finally时,异常在不同的层次抛出 ,在不同的位置抛出,可能会导致不同的finally语句块执行顺序。

Finally不一定会执行。

关于JAVA项目中的常用的异常处理情况的更多相关文章

  1. 对java异常的总结及java项目中的常用的异常处理情况

    文章涉及内容来源:黑马程序员自学整理的笔记,网上查阅资料,以及转载名为墨钺的博客大佬,附上博客转载地址:https://www.cnblogs.com/gothic-death/p/9946415.h ...

  2. JAVA项目中的常用的异常处理情况总结

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

  3. 关于JAVA项目中的常用的异常处理情况总结

    1. JAVA异常处理 在面向过程式的编程语言中,我们可以通过返回值来确定方法是否正常执行.比如在一个c语言编写的程序中,如果方法正确的执行则返回1.错误则返回0.在vb或delphi开发的应用程序中 ...

  4. JAVA项目中的常用的异常处理情况

    NO.1 java.lang.NullPointerException 这个异常比较容易遇到,此异常的解释是“程序遇上了空指针”,简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现 ...

  5. 关于JAVA项目中的常用的异常处理

    一.简介(摘自百度百科) 异常处理,是编程语言或计算机硬件里的一种机制,用于处理软件或信息系统中出现的异常状况(即超出程序正常执行流程的某些特殊条件). 异常有以下的一些特点: (1)偶然性.程序运行 ...

  6. JAVA项目中的常用的异常处理

    1. java.lang.nullpointerexception这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对象 ...

  7. 动手动脑5JAVA项目中的常用的异常处理情况

          Java异常处理的几个原则如下.     (1)不要丢弃异常,捕获异常后需要进行相关处理.如果用户觉得不能很好地处理该异常,就让它继续传播,传到别的地方去处理,或者把一个低级的异常转换成应 ...

  8. JAVA项目中常用的异常处理情况总结

    JAVA项目中常用的异常知识点总结 1. java.lang.nullpointerexception这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用 ...

  9. JAVA项目中常用的异常知识点总结

    JAVA项目中常用的异常知识点总结 1. java.lang.nullpointerexception这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用 ...

随机推荐

  1. 11G新特性 -- archival(long-term)backups

    在oracle 10g中,提供了backup ... keep功能来重载配置好的retention策略. 在oracle 11g中,可以重定义backup ... keep命令来创建长期保留的备份,称 ...

  2. 【LeetCode-面试算法经典-Java实现】【062-Unique Paths(唯一路径)】

    [062-Unique Paths(唯一路径)] [LeetCode-面试算法经典-Java实现][全部题目文件夹索引] 原题 A robot is located at the top-left c ...

  3. 复习下C 链表操作(双向循环链表,查找循环节点)

    双向循环链表  和 单向循环链表 查找循环节点 思路都是一样. 快慢指针查找法. 理论可参考 c 链表之 快慢指针 查找循环节点 typedef struct Student_Double { ]; ...

  4. Atitit.pagging  翻页功能解决方案专题 与 目录大纲 v3 r44.docx

    Atitit.pagging  翻页功能解决方案专题 与 目录大纲 v3 r44.docx 1.1. 翻页的重要意义1 1.2. Dep废弃文档   paip.js翻页分页pageing组件.txt1 ...

  5. Atitti mybatis的单元测试attilax总结

    Atitti mybatis的单元测试attilax总结 版本mybatis 3.2.4 /palmWin/src/main/java/com/attilax/dao/mybatisTest.java ...

  6. 《转》12个Sublime Text使用技巧

    文为您提供Sublime Text编辑器的12个技巧和诀窍,深入挖掘这个看似简洁的代码编辑器,背后所隐藏的实现各种高级功能的无限可能. 1) 选择 以下是一些Sublime Text选择文本的快捷键: ...

  7. 【iCore4 双核心板_ARM】例程二十二:LWIP_UDP实验——以太网数据传输

    实验现象: 核心代码: int main(void) { system_clock.initialize(); led.initialize(); adc.initialize(); delay.in ...

  8. 【iCore4 双核心板_FPGA】例程二:GPIO输入实验——识别按键输入

    实验现象: 按键每按下一次,三色LED切换一次状态. 核心源代码: module key_ctrl( input clk_25m, input rst_n, input key, output fpg ...

  9. vue深入相应式原理

    Vue 最显著的特性之一便是不太引人注意的响应式系统(reactivity system).模型层(model)只是普通 JavaScript 对象,修改它则更新视图(view).这会让状态管理变得非 ...

  10. Java知多少(37)静态内部类、匿名内部类、成员式内部类和局部内部类

    内部类可以是静态(static)的,可以使用 public.protected 和 private 访问控制符,而外部类只能使用 public,或者默认. 成员式内部类 在外部类内部直接定义(不在方法 ...