异常机制

Posted gsan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了异常机制相关的知识,希望对你有一定的参考价值。

异常引入
? 程序中的异常
? 示例1:给出除数和被除数,求商
? 如果除数为0,出异常
? 如果除数或者被除数不是数字,出异常
? 示例2:将d:/a.txt复制到e:/a.txt ? 如果d:/a.txt不存在
? 如果e:/存在a.txt ? 如果e盘空间不足
? 如果复制过程中出错

if(“d:/a.txt”这个文件存在){
if(e盘的空间大于a.txt文件长度){
if(文件复制一半IO流断掉){
停止copy,输出:IO流出问题!
}else{
copyFile("d:/a.txt","e:/a.txt");
}
}else{
输出:e盘空间不够存放a.txt!
}
}else{
输出:a.txt不存在!

}

 

异常引入

? 程序中的异常
? 面对异常该怎么办呢?
? 方式1:由开发者通过if-else来解决异常问题
? 代码臃肿:业务代码和异常处理代码放一起
? 程序员要花很大精力"堵漏洞“
? 程序员很难堵住所有“漏洞”,对程序员本身要求较高
? 方式2:开发者不需要通过if-else来解决异常问题,而是Java提供异常处理机制。它将异常处理代
码和和业务代码分离,使程序更优雅,更好的容错性,高键壮性
处理步骤:

  1. 程序中预先想好了
  2. 对付异常的处理办法
  3. 程序运行异常!
  4. 处理异常 处理完毕,程序继续运行
  5. 产生异常对象
  6. 捕获异常
  7. 处理异常
  8. 处理完毕,程序继续运行

? 异常( Exception 也称例外)就是在程序的运行过程中所发生的不正常的事件,它会中
断正在运行的程序
? 所需文件找不到
? 网络连接不通或中断
? 算术运算错 (被零除…) ? 数组下标越界
? 装载一个不存在的类或者对null对象操作
? 类型转换异常
? ……
? 当Java程序出现以上的异常时,就会在所处的方法中产生一个异常对象。这个异常对象
包括异常的类型,异常出现时程序的运行状态以及对该异常的详细描述。

技术分享图片

 异常处理:

 技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

 

异常分类:

技术分享图片

技术分享图片

技术分享图片

 

异常处理:

技术分享图片

技术分享图片

 

自定义异常:

技术分享图片

 























以上是关于异常机制的主要内容,如果未能解决你的问题,请参考以下文章

Java中的异常处理机制的简单原理和应用。

异常及异常的处理机制

C++异常机制和智能指针机制的杂谈

C++异常机制和智能指针机制的杂谈

Java中的异常处理机制

C++ 异常机制分析