认识异常
异常是导致程序中断的运行的一种指令流,如果不对异常进程正确处理,则会导致程序的中断执行,造成程序不必要的损失。
Java中的异常
在 Java 中一个异常的产生,主要有如下三种原因:
- Java 内部错误发生异常,Java 虚拟机产生的异常。
- 编写的程序代码中的错误所产生的异常,例如空指针异常、数组越界异常等。
- 通过 throw 语句手动生成的异常,一般用来告知该方法的调用者一些必要信息。
Java 通过面向对象的方法来处理异常。在一个方法的运行过程中,如果发生了异常,则这个方法会产生代表该异常的一个对象,并把它交给运行时的系统,运行时系统寻找相应的代码来处理这一异常。
我们把生成异常对象,并把它提交给运行时系统的过程称为拋出(throw)异常。运行时系统在方法的调用栈中查找,直到找到能够处理该类型异常的对象,这一个过程称为捕获(catch)异常。
看下面一个例子,认识一下异常范例。
因为a没有实例化就直接调用a的属性i,从而导致程序报错,出现异常提示,这个下面红色的就是异常。
处理异常
一般程序语言都是用try catch来捕获处理异常。
使用断言(Assertion)
断言是一种调试程序的方式。在Java中,使用assert
关键字来实现断言。