1. throws和throw的区别
throws: 用在方法名后面,后面跟异常类名
可以跟多个异常类名,用逗号隔开
表示抛出异常,由该方法的调用者来处理
throws表示抛出异常的一种可能性,并不一定会发生异常
throw:
跟在方法体内,跟的是异常对象名
只能抛出一个异常对象名
表示抛出异常,有方法体内的语句来处理
throw表示抛出了异常,执行throw表示一定发生了某种异常
2.Finally的用法
Finally:被Finally控制的语句一定会执行
注意:如果在执行Finally语句前,JVM退出了,就不执行Finally语句了
A:格式:try...catch...Finally... B:用于释放资源,在IO流操作和数据库操作中会使用
3. final Finally finalize的区别
final 可用来修饰类、成员变量、成员方法,
修饰类:类不能被继承
修饰方法:方法不能被重写
修饰变量:变量为常量
Finally 是异常处理的一部分,一般用来释放资源
finalize 是Object的一个方法,用于垃圾回收
4. 如果catch里面有return语句,问finally里面的语句还会继续执行吗 ? 如果会,请问是在return语句之前还是在之后
会执行,在return语句之前,更准确的在之间执行