分类
商品
商品
店铺
资讯
分类
商品
商品
店铺
资讯

Dart 之Exceptions异常

  • 时间:2019-06-11 02:35 作者:youseewhat 来源:youseewhat 阅读:134
  • 扫一扫,手机访问
摘要:Exceptions(异常)相比较java的异常有少量区别Dart 异常是非检查异常。 方法不肯定公告了他们所抛出的异常Dart提供的异常类型:ExceptionsError自己设置异常Dart 代码可以 抛出任何非 null 对象为异常,不仅仅是实现了 Exception 或者者 Error 的对象。

Exceptions(异常)

相比较java的异常有少量区别

Dart 异常是非检查异常。 方法不肯定公告了他们所抛出的异常

Dart提供的异常类型:

  • Exceptions
  • Error
  • 自己设置异常

Dart 代码可以 抛出任何非 null 对象为异常,不仅仅是实现了 Exception 或者者 Error 的对象。

抛出异常

throw new FormatException('Expected at least 1 section');throw 'Out of llamas!';

异常捕获

Dart 对于抛出多种类型的异常,可以分别捕获对应类型的异常

假如没有指定捕获异常类型,则可以捕获任何类型的异常

可以使用on 或者者 catch来公告捕获语句,也可以 同时使用。使用 on 来指定异常类型,使用 catch 来 捕获异常对象

try {  breedMoreLlamas();} on OutOfLlamasException {  // A specific exception  buyMoreLlamas();} on Exception catch (e) {  // Anything else that is an exception  print('Unknown exception: $e');} catch (e) {  // No specified type, handles all  print('Something really unknown: $e');}

函数 catch()可以带有一个或者者两个参数, 第一个参数为抛出的异常对象, 第二个为堆栈信息

  ...} on Exception catch (e) {  print('Exception details:\n $e');} catch (e, s) {  print('Exception details:\n $e');  print('Stack trace:\n $s');}

使用 rethrow 关键字可以把捕获的异常给 重新抛出

} catch (e) {  // No specified type, handles all  print('Something really unknown: $e');  rethrow;}

Finally

使用 一个finally语句来确保少量代码一定被执行

没有 catch语句来捕获异常, 则在执行完 finally语句后, 异常被抛出了

try { } finally {}

一般finally放在匹配所有类型异常的catch之后

try {  } catch(e) { } finally {}

Exception 异常类型

-Exception

Error异常类型

error
  • 全部评论(0)
最新发布的资讯信息
【系统环境|】极客时间-数据分析实战45讲【完结】(2021-09-02 16:26)
【系统环境|windows】字节跳动前台面试题解析:盛最多水的容器(2021-03-20 21:27)
【系统环境|windows】DevOps敏捷60问,肯定有你想理解的问题(2021-03-20 21:27)
【系统环境|windows】字节跳动最爱考的前台面试题:JavaScript 基础(2021-03-20 21:27)
【系统环境|windows】JavaScript 的 switch 条件语句(2021-03-20 21:27)
【系统环境|windows】解决 XML 数据应用实践(2021-03-20 21:26)
【系统环境|windows】20个编写现代CSS代码的建议(2021-03-20 21:26)
【系统环境|windows】《vue 3.0探险记》- 运行报错:Error:To install them, you can run: npm install --save core-js/modules/es.arra...(2021-03-20 21:24)
【系统环境|windows】浅谈前台可视化编辑器的实现(2021-03-20 21:24)
【系统环境|windows】产品经理入门迁移学习指南(2021-03-20 21:23)
手机二维码手机访问领取大礼包
返回顶部