che*_*rit 5 java exception-handling try-catch-finally
我已经搜索了一些答案,但找不到,因此我将此作为一个新问题提出来.try-catch中的catch方法.这是一种方法吗?,它将Exception类型的对象作为参数.但如果它是一种方法,
谁调用此方法以及调用此方法的对象?
你不能正常在另一个方法定义中写一个方法定义.所以如果它是一个方法,我怎么能在另一个方法中写入catch?
如果它不是一种方法,那么它是什么?
public void foo() {
try { ;
} catch (Exception ex) {
; // this is catch method body
}
}
Run Code Online (Sandbox Code Playgroud)上面的代码意味着catch方法体在另一个方法foo()的体内.
Mic*_*rry 11
不,它是一个特殊的Java构造,表示如果Exception捕获了要运行的代码块,它不是方法.该代码块确实采用了一个参数(各种类型),这是捕获然后处理的例外 - 但这并不能使它成为一种方法.
正如评论中指出的那样,它类似于if语句(你可以将它视为一个"参数",这是一个布尔表达式,但同样这也不是一种方法.)