天天看点

throw和throws的区别共同点区别

共同点

两者在抛出异常时,他们只管把异常抛出,并不处理异常,由调用者负责处理。

区别

(1)throw语句总是出现在方法体里面,用来抛出一个异常,表示在这个地方就有一个异常出现,程序会在throw后面立即终止,它后面的语句将执行不到。

而throws是出现在方法名的后面,用来把方法中出现的异常抛出去给调用者处理。

当方法中出现了异常自己不想处理,那么可以使用throws在方法名后面将异常抛出

去给调用者处理。

(2)throw只能抛出一个异常对象。

而throws可以在方法名后面一次性抛出多个异常,多个异常对象以逗号分隔。

(3)throw抛出异常时,调用它的方法时可以不声明或不捕获,虽编译器不会报错,但是从开发角度说还是要使用try-catch来处理这个异常。

而throws抛出异常时,调用它的方法时也要声明抛出异常或者进行try-catch捕获,否则编译会报错。