异常机制
异常的概念
在进行程序设计时,错误的产生是不可避免的
如何处理错误?
把错误交给谁去处理?
程序又该如何从错误中恢复?
这是任何程序设计语言都要解决的问题
2
所谓错误,是在程序运行过程中发生的异常事件,比如除0溢出、数组越界、文件找不到等,这些事件的发生将阻止程序的正常运行。为了加强程序的强壮性(robust),程序设计时,必须考虑到可能发生的异常事件并做出相应的处理。
异常的概念
3
{
openTheFile;
determine its size;
allocate that much memory;
read-file
closeTheFile;
}
没有错误处理的程序
4
openFiles;
if (theFilesOpen)
{ determine the length of the file;
if (gotTheFileLength)
{ allocate that much memory;
if (gotEnoughMemory)
{ read the file into memory;
if (readFailed) errorCode=-1;
else errorCode = -2; }
else errorCode=-3;}
else errorCode=-4 ;}
else errorCode=-5;
以常规方法处理错误
5
程序可读性差,大量的错误处理代码混杂在程序中
观察前面的程序,会发现大部分精力花在出错处理上
只把能够想到的错误考虑到,此外的情况无法处理
出错返回信息量太少,无法更确切的了解错误状况或原因
以常规方法处理错误存在的问题
6
用异常的形式处理错误
try
{ openTheFile;
determine its size;
allocate that much memory;
read-File;
closeTheFile;
}
catch (fileopenFailed) { dosomething; }
catch (sizeDetermineFailed) { dosomething; }
catch (memoryAllocateFailed) { dosomething; }
catch (readFailed) { dosomething; }
catch (fileCloseFailed) { dosomething; }
finally { dosomething; }
try里写我们尝试着要做的事情,
每一个catch针对一种可能的错误
每一个错误都有相应的处理办法,
并且将实现功能(事务逻辑)与
错误处理分开来
7
Java异常是Java提供的用于处理程序中错误的一种机制。
所谓错误是指在程序运行过程中发生的一些异常事件(如:除0溢出,数组下标越界,所要读取的文件不存在)。
设计良好的程序应该在异常发生时提供处理这些错误的方法,使得程序不会因为异常的发生而阻断或产生不可预见的结果。
Java的异常处理机制
8
Java程序的执行过程中如出现异常事件,可以生成一个异常类对象,该异常对象封装了异常事件的信息并将被提交给Java运行时系统,这个过程称为抛出(throw)异常。
当Java运行时系统接收到异常对象时,会寻找处理这一异常的代码并把当前异常对象交给其处理,这一过程称为捕获(catch)异常。
Java的异常处理机制
9
Catch an exception
Java的异常机制的好处
使我们在一个地方将精力集中在要解决的问题上,而在另一个地方处理来自那部分代码的异常情况。
try { //Code that may make exception }
catch(Type1 id1){…}
catch(Type1 id1){…}
try
{ openTheFile;
determine its size;
allocate that much memory;
read-File;
closeTheFile;
}
catch (fileopenFailed) { dosomething; }
catch (sizeDetermineFa
java异常处理ppt课件 来自淘豆网m.daumloan.com转载请标明出处.