--异常时描述出错信息的对象
在catch里面定义一个异常变量,用来接受再try快中抛出的异常对象,然后通过e.printStackTrace();将异常
对象信息打印出来
异常分两类:编译期异常 和 运行期异常
编译期异常:要求用户必须处理如果不处理无法通过编译
运行期异常:用户可处理可不处理,所有的运行期异常都是RuntimeException的子类
finally块:无论是否有异常都会执行,如果try块或catch块中有return,这时finally块会在方法跳出前执行。
finally一般用于资源清理工作,流的关闭,以及数据库的关闭
虚拟机在执行finally块关闭时就不会执行finally块了(System.exit(0));
异常执行的顺序:
先执行try块的内容,顺序执行,如果有异常发生,马上执行catch块,同时终止try块的的其他代码执行,无论是否有异常finally都会执行
一个try块中出现异常,就会找到和最近异常类型匹配的catch块,同时忽略其他catch块。
显示抛出异常对象:
throw new Exception
throws是方法的修饰符,表示该方法有可能抛出异常,这时调用方就必须处理异常,谁调用谁处理。
try可以和finally连用,不要catch,语法上是允许的,表示无论try是否发生异常,都会执行finally的内容。
在catch里面定义一个异常变量,用来接受再try快中抛出的异常对象,然后通过e.printStackTrace();将异常
对象信息打印出来
异常分两类:编译期异常 和 运行期异常
编译期异常:要求用户必须处理如果不处理无法通过编译
运行期异常:用户可处理可不处理,所有的运行期异常都是RuntimeException的子类
finally块:无论是否有异常都会执行,如果try块或catch块中有return,这时finally块会在方法跳出前执行。
finally一般用于资源清理工作,流的关闭,以及数据库的关闭
虚拟机在执行finally块关闭时就不会执行finally块了(System.exit(0));
异常执行的顺序:
先执行try块的内容,顺序执行,如果有异常发生,马上执行catch块,同时终止try块的的其他代码执行,无论是否有异常finally都会执行
一个try块中出现异常,就会找到和最近异常类型匹配的catch块,同时忽略其他catch块。
显示抛出异常对象:
throw new Exception
throws是方法的修饰符,表示该方法有可能抛出异常,这时调用方就必须处理异常,谁调用谁处理。
try可以和finally连用,不要catch,语法上是允许的,表示无论try是否发生异常,都会执行finally的内容。