Java异常抛出
throw和throws的区别
- 相同:都是用于做异常的抛出处理的。
- 不同点:
- 使用的位置: throws 使用在函数上,throw使用在函数内
- 后面接受的内容的个数不同:
- throws 后跟的是异常类,可以跟多个,用逗号隔开。
- throw 后跟异常对象。
1.try语句不能单独存在,可以和catch、finally组成 try…catch…finally、try…catch、try…finally三种结构。
2.catch语句可以有一个或多个,finally语句最多一个,try、catch、finally这三个关键字均不能单独使用。
3.try、catch、finally三个代码块中变量的作用域分别独立而不能相互访问。如果要在三个块中都可以访问,则需要将变量定义到这些块的外面。
4.多个catch块时候,Java虚拟机会匹配其中一个异常类或其子类,就执行这个catch块,而不会再执行别的catch块。(子类在上,父类在下)。
5.throw语句后不允许有紧跟其他语句,因为这些没有机会执行。
6.如果一个方法调用了另外一个声明抛出异常的方法,那么这个方法要么处理异常,要么声明抛出。