Exception
| 名称 |
说明 |
| DeferredLoadException |
延迟加载异常 |
| FormatException |
格式异常 |
| InterDirisionByZeroExecition |
整数除零异常 |
| IOException |
IO 异常 |
| IsolateSpawnExecption |
隔离产生异常 |
| TimeoutExecption |
超时异常 |
Error
| 名称 |
说明 |
| AbstractClassInstantiationError |
抽象类实例化错误 |
| ArgumentError |
参数错误 |
| AssetrionError |
断言错误 |
| AsyncError |
异步错误 |
| CaseError |
Cast 错误 |
| ConcurrentModificationError |
并发修改错误 |
| CycliclnitializationError |
周期初始化错误 |
| FanThroughError |
Fall Through 错误 |
| JsonUnsupportedError |
json 不支持错误 |
| NoSuchMethodError |
方法不存在错误 |
| NullThrownError |
Null 错误 |
| OutOfMemoryError |
内存溢出错误 |
| RemoteError |
远程错误 |
| StackOverflowError |
堆栈溢出错误 |
| StateError |
状态错误 |
| UnimplementedError |
未实现的错误 |
| UnsupportedError |
不支持的错误 |
实例
1try {
2 // 抛出异常
3 throw "错误消息"; // FormatException("错误消息")
4} on [ 错误类型 ] catch(e, s) {
5 // e: 错误信息
6 // s: 堆栈信息
7} catch(e, s) {
8 // 重新抛出异常
9 rethrow;
10} finally {
11 // 一定会被执行的代码
12 // 无论是否捕获到异常
13}
注意事项
Dart 异常是非检测异常,方法不会声明其可能抛出的异常类型。也就是说,Dart 程序中可以抛出任何非空的异常类型。