Dart语法详解(三)——进阶篇

Dart语言的语法 Dart是由Google开发的一种现代编程语言,最初于2011年发布。它设计的初衷是为了替代JavaScript,重点关注客户端开发,尤其是移动和网页应用。Dart语言的特点包括:优雅的语法:Dart的语法简单易懂,吸收了许多其他语言的优点,易于上手,适合新手学习。强类型与动态类型支持:Dart是一种强类型语言,但也支持动态类型。你可以根据需要选择静态或动态类型,提高代码的灵活性。高性能:Dart编译后可以直接生成机器码,或转换为JavaScript代码,使得其在网页和移动应用中的性能表现优越。 阅读详情

想学Flutter,就请关注这个专栏
Flutter系列(一)——详细介绍
Flutter系列(二)——与React Native进行对比
Flutter系列(三)——环境搭建(Windows)
Flutter系列(四)——HelloWorld
Dart语言详解(一)——详细介绍
Dart语言详解(二)——基本语法

文档归档:
https://github.com/yang0range/flutterfile

前言

在上一篇文章,我们详细的介绍了Dart语法的一些基本语法,这一这篇文章,我们继续介绍Dart的语法的相关知识。

异常

不管是Java语言还是Dart语言,都有异常,以及异常的捕获,但是不同的是dart中的异常都是非检查异常,方法可以不声明可能抛出的异常,也不要求捕获任何异常。

Dart提供了Exception和Error类型以及一些子类型来定义异常。不过,还可以自定义异常,只要抛出非空对象作为异常即可,不要求必须是Exception和Error对象,但是一般来说都是抛出Exception和Error类型。

接下来我们详细介绍一下。

Exception类型

Error类型

异常抛出

异常的抛出和Java还是很相像的。

  //抛出Exception对象
  throw new FormatException('格式异常');

  //抛出Error对象
  throw new NullThrownError();

  //抛出任意非null对象
//  throw '这是一个异常';

异常捕获
try {                                                                                    throw new NullThrownError();
//    throw new OutOfMemoryError();
  } on OutOfMemoryError {
    //on 指定异常类型
    print('没有内存了');
//    rethrow; //把捕获的异常给 重新抛出
  } on Error {
    //捕获Error类型
    print('Unknown error catched');
  } on Exception catch (e) {
    //捕获Exception类型
    print('Unknown exception catched')
Dart语言详解(二)——基本语法 想学Flutter,就请关注这个专栏 Flutter系列(一)——详细介绍 Flutter系列(二)——与React Native进行对比 Flutter系列(三)——环境搭建(Windows) Flutter系列(四)——HelloWorld Dart语言详解(一)——详细介绍 Dart语言详解(二)——基本语法 文档归档: https://github.com/yang0range/fl... 阅读详情

相关推荐

dart学习(1) - 语言分类,dart运行,dart语法

前言 接上篇flutter学习(1),

Wby_Nju的博客 1623

初探 Dart 语法 01

欢迎来到 Dart 编程的世界,最开始将通过初探 Dart 的基本语法;让你对 Dart 整个语法体系轮廓、Dart 的编程有个大概了解,然后再深入到具体每个语法点细节和使用场景。由于文章篇幅的问题,初探 Dart 语法主要分为上下两篇来介绍。 1. Hello Dart 这是第一个 Hello Dart 程序,很多程序入口都是从 main 函数开始,所以 Dart 也不例外,一起来看下百变的 m...

Mikyou的专栏 1285

JS逆向实战:从宿务航空机票搜索到参数签名算法解析

在现代Web应用开发中,前端与后端的数据交互安全是核心技术环节。其原理通常涉及参数签名、令牌验证等机制,用于防止未授权访问和数据篡改。这些技术的核心价值在于保障接口调用的合法性与数据完整性,广泛应用于电商、金融、旅行预订等对数据安全要求较高的场景。以机票搜索为例,网站常通过动态生成的签名参数来验证请求来源。本文以宿务太平洋航空为案例,深入解析其搜索请求中关键参数(如signature)的生成逻辑,并演示如何通过浏览器开发者工具进行断点调试、变量追踪,最终使用Node.js与crypto-js库本地复现完整请

weixin_26642481的博客 752

告别黑窗口:XShell+X11转发图形化界面的5分钟保姆级教程(附Xming配置)

本文详细介绍了如何使用XShell和X11转发技术快速实现Linux图形化界面的远程访问。通过5分钟快速配置指南,包括服务端设置、客户端工具选择及XShell+Xming的完美配置,帮助用户高效运行GUI应用程序,提升远程工作效率。特别适合需要图形化操作的开发者和运维人员。

weixin_29223603的博客 326

UniApp 与 Taro 深度解析:如何根据项目需求选择最佳跨平台框架?

本文深度对比了UniApp和Taro两大主流跨平台开发框架。UniApp基于Vue生态,提供开箱即用的高效开发体验,尤其适合快速覆盖多端小程序;Taro则根植React范式,架构灵活,便于与现有React生态集成,更适合对性能和原生体验有高要求的复杂项目。文章结合团队技术栈、项目类型及性能需求,为开发者提供了清晰的选型指南。

snow3的博客 204

python机器人编程——用pytorch实现六轴机械臂的正向和逆向数值解算,及python算法解析

前面对六轴(或多轴)机械臂进行了一些研究,特别是利用几何进行简化,实现逆解,来完成比较简单的搬用任务。然而,如果需要比较精确的操作任务,可能需要更加复杂的机械臂解算。其中比较复杂的是数值解算,这种解算往往涉及到比较复杂的机器人运动等原理知识,比较难以上手。但是,python的生态挺全面,已经有很多牛人实现了数值解法,但是去看他们的代码,还是觉得费劲。此外,随着深度神经网络的兴起,很多是用建立深度学习神经网络,去利用机械臂输入输出的大数据,训练机械臂的控制模型,这个上手也比较慢。

JAMES费的空间 5791

2022年电赛E题声源定位跟踪系统

电赛声源定位

qq_53357019的博客 2万+

微信小程序 - 解决请求报错 request:fail errcode:-201 cronet_error_code:-201 error_msg:net::ERR_CERT_DATE_INVALID

微信小程序报错“request:fail errcode:-201 cronet_error_code:-201 error_msg:net::ERR_CERT_DATE_INVALID“,微信小程序请求报错,微信小程序errcode:-201,服务器报错,无法调用接口,微信小程序真机https请求失败,微信小程序wx.request接口报错,小程序真机调试运行接口都报错了,真机测试下网络请求都不行了且报错,证书没问题依旧报错,检查HTTPS证书,ssl证书,使用浏览器测试访问证书是正常的,不是证书问题,请

🏆 前端领域优质创作者 1万+

巡检机器人的基于ROS系统的任务管理架构设计总结

本文探讨了基于ROS(机器人操作系统)的工业巡检机器人任务管理架构设计,提出分层闭环方案。架构围绕稳、准、活、扩四大目标,分为感知层(多源数据融合)、调度层(智能决策)、执行层(动作控制)和数据层(存储交互)。关键技术包括ROS2实时性优化、功能包复用和多机器人协同调度。实践案例显示,该架构在电力巡检中使任务完成率达99%,在化工园区实现95%覆盖率。当前挑战包括SLAM地图漂移和多机通信延迟,未来可通过语义SLAM和区域通信优化。

start_up_go的博客 466

37、深入解析SCTP与RTP传输协议

本文深入解析了SCTP与RTP两种重要传输协议。SCTP提供可靠的多流数据传输,支持关联管理、选择性确认和错误处理,适用于高可靠性场景;RTP则专注于实时音视频数据的低延迟传输,配合RTCP实现质量监控。文章详细介绍了两种协议的数据结构、工作流程及应用场景,并对比其特性,帮助开发者根据可靠性、实时性和多流需求选择合适的协议。

time3的博客 83

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

上一篇: Dart语言详解(二)——基本语法
yang0range
博客等级 码龄12年 15粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值