throw的区别在于,如果你用 throws抛异常,可能会改变异常类型,并丢失异常的trace信息。throw则保留。 比较如下2段代码
代码1:
try{
...
}catch(Exception e){
throws e;
}
代码2:
try{
...}catch(Exception e){
throw;
}
如果2段代码都接到了 InvalideOperationException。
那么代码1,抛出去的是 Exception类型。
而代码2,抛出去的是 InvalideOperationException。
不知道你问的是不是这个。
throws可以,想要手动抛出异常的话,可以throws new Exception()
throw
throw new Exception
哪个关键字可以抛出异常? ( throw )
解释:throw用于方法体内,并且抛出的是一个异常类对象,而throws关键字用在方法声明中,用来指明方法可能抛出的多个异常。也就是说throws声明异常,而throw用来抛出异常。
总的来说,我也不知道!