异常捕获

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Dart 的异常捕获可以抛出任意类型的对象

throw Exception('我是异常'); // Unhandled exception: Exception: 我是异常

try {
test();
} on Exception catch (e) {
// 捕获任意一个异常
// print(e);
} catch (e) {
// 没有指定类型,处理所有
// print(e); Exception: 1233
} finally {
// 无论是否捕获异常都会执行finally的代码
// ...
}

void test() {
throw Exception("1233");
}

// 可以使用 on 或 catch,或者两者都使用。需要指定异常类型时使用 on。当需要处理异常对象时,使用 catch。