在C#的上下文中,可以这样编写代码:
try {
...
}
catch {
...
}
在其他情况下,代码可以是:
try {
...
}
catch (Exception e) {
...
}
我的问题是:“捕获”是哪种数据结构或构造?从第二个示例的外观看,它似乎是一种方法(在C#编程语言的上下文中)。但是吗?如果是这样,那么为什么在第一个示例中不需要括号(因为括号对于C#中的方法不是可选的)?
答案 0 :(得分:2)
try-catch
是在C#编程语言或其他命令式编程语言中称为声明的示例。语句是语法元素,是语言构造的一部分。
看看documentation of try-catch来了解其定义。
答案 1 :(得分:2)
C#具有Statements(或语句关键字),仅是程序指令。 Catch是C#try-catch语句中的子句(分类在异常处理语句类别中)。另外,由于子句是按顺序检查的,因此您应该在不太具体的例外之前捕获更具体的例外。
答案 2 :(得分:0)
尝试/捕获是statement
try ... catch语句用于捕获发生的异常 在执行块期间,使用try ... finally语句 指定始终执行的完成代码,无论是否 是否发生异常。
来源: https://docs.microsoft.com/en-us/dotnet/csharp/tour-of-csharp/statements
捕获是尝试/捕获clause
的{{1}}
在同一个中可以使用多个特定的catch子句 try-catch语句。
来源:https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/try-catch