java的异常处理机制 异常的关键字Exception
try,catch,finally,throw,throws关键字
什么是异常,为什么要引入异常?
java程序运行时出错,java就抛出异常,程序立即终止(也可以说程序崩溃)
java将错误信息封装在异常对象里抛出
学会查看异常的信息:异常的名字,异常的信息,程序抛异常的位置
java引入异常处理机制,是防止程序出错崩溃
java的异常的分类
java的抛出的错误用异常类来表示,java拥有一个异常体系(有许多异常类,并且相互之间具有关系)
java里面的所有异常都是Throwable的子类
java虚拟机的异常是Error的子类,一般不需进行处理(因为没法进行处理)
除Error之外还有Exception,Exception分为两类:RuntimeException(运行时异常),被检查异常(除了RuntimeException都是被检查异常)
RuntimeException(运行时异常,可以不捕获或声明抛出,编译不会报错,一般是控制不当 造成的),可检查异常(必须捕获或声明抛出,这类异常通常需要检测并处理,一般使用资源时造成的)
几个常见的异常:NullPointerException(空指针),IndexOutOfBoundsException(索引越界),SQLException(数据库异常),IOException(文件异常)
异常的处理方式
使用try,catch,finally进行处理
不处理,使用throws,throw交给别人来处理
try,catch,finally中程序的运行过程
尝试执行try里面的语句
一次运行当中最多执行一个catch块,如果没有抛出异常,catch块不执行
finally总会执行,不管有没有抛出异常
如果try块里面有return语句,finally也会执行
区分RuntimeException与被检查异常
RuntimeException不需要捕获或声明抛出(但是如果你捕获或声明抛出也不会有错)
被检查异常必须要捕获或者声明抛出
try,catch,finally,throw,throws关键字
什么是异常,为什么要引入异常?
java程序运行时出错,java就抛出异常,程序立即终止(也可以说程序崩溃)
java将错误信息封装在异常对象里抛出
学会查看异常的信息:异常的名字,异常的信息,程序抛异常的位置
java引入异常处理机制,是防止程序出错崩溃
java的异常的分类
java的抛出的错误用异常类来表示,java拥有一个异常体系(有许多异常类,并且相互之间具有关系)
java里面的所有异常都是Throwable的子类
java虚拟机的异常是Error的子类,一般不需进行处理(因为没法进行处理)
除Error之外还有Exception,Exception分为两类:RuntimeException(运行时异常),被检查异常(除了RuntimeException都是被检查异常)
RuntimeException(运行时异常,可以不捕获或声明抛出,编译不会报错,一般是控制不当 造成的),可检查异常(必须捕获或声明抛出,这类异常通常需要检测并处理,一般使用资源时造成的)
几个常见的异常:NullPointerException(空指针),IndexOutOfBoundsException(索引越界),SQLException(数据库异常),IOException(文件异常)
异常的处理方式
使用try,catch,finally进行处理
不处理,使用throws,throw交给别人来处理
try,catch,finally中程序的运行过程
尝试执行try里面的语句
一次运行当中最多执行一个catch块,如果没有抛出异常,catch块不执行
finally总会执行,不管有没有抛出异常
如果try块里面有return语句,finally也会执行
区分RuntimeException与被检查异常
RuntimeException不需要捕获或声明抛出(但是如果你捕获或声明抛出也不会有错)
被检查异常必须要捕获或者声明抛出