扩展 extension extension 本质上还是和继承一样扩展了方法。 但这是一种简洁优雅的方式,你可以想想之前继承的繁琐。 示例 扩展日期时间 加入依赖包 pubs...

扩展 extension extension 本质上还是和继承一样扩展了方法。 但这是一种简洁优雅的方式,你可以想想之前继承的繁琐。 示例 扩展日期时间 加入依赖包 pubs...
空安全 减少数据异常错误 提高程序性能 默认不可空 type? 可空 value! 值保证不为空,主观上 value?. 不为空才执行 value?? 如果空执行 late ...
类型定义 typedef 显示这个函数的输入输出 简化常用函数、类型定义 typedef 定义使用 采用 typedef 未采用 typedef 简化常用类型定义 定义 使用
生成器 generate 同步生成器 yield 会等待 moveNext 指令 异步生成器 以流的方式一次性推送StreamSubscription 对象进行流监听控制 递...
异步 async 异步回调 then then 的方式异步回调 异步等待 await async 写在函数定义await 写在异步请求头 异步返回值 定义 Future<T>...
泛型 generics 泛型使用 容器对象,在创建对象时都可以定义泛型类型。 泛型函数 构造函数泛型 这是大多数情况下使用泛型的场景,在一个类的构造函数中 泛型限制 定义 实...
库 lib 导入核心库 导入第三方库 编写 pubspec.yaml 执行拉取包命令 程序调用 导入自己的 git 仓库 编写 pubspec.yaml 执行拉取包命令 从 ...
工厂函数 调用子类 单例模式 减少重复实例对象 如果不用工厂函数,就要用类静态方法,这样会有多余的实例对象
混入 混入 with 定义类 with 混入 采用 with ... , .... , ... 方式 mixin 入多个类功能 执行 函数重名冲突 Android Ios 加...
继承 实现继承 父类调用 super 对象可以访问父类 调用父类构造 可调用父类的 构造函数 重写超类函数 在重写的函数上加修饰符 @override 继承抽象类的问题 抽象...
接口 Dart 没有接口 https://dart.dev/samples#interfaces-and-abstract-classes[https://dart.dev/...
抽象 abstract 类、函数、成员 普通类前加 abstract 不能直接 new 实例化 继承方式使用 接口方式使用 定义 实例
static 静态变量 static 定义 声明 调用 静态变量可以通过外部直接访问,不需要将类实例化 函数内部访问 实例化后的类也可以访问该静态变量 声明 调用 静态方法 ...
get set 定义、使用 get set 定义 使用 简化 get set 业务场景 购物车 以前可能会写个方法 getXXX()当然也适用于赋值操作
类 定义、使用类 定义 使用 构造函数 定义 使用 初始化列表 定义 使用 命名构造函数 定义 使用 重定向构造函数 定义 使用 callable
异常 错误的两种类型 Exception 类 Exception class[https://api.dartlang.org/stable/2.17.1/dart-core...
流程控制 if else for while do while switch case break continue continue 指定位置
操作符 操作符表 描述操作符 后缀操作expr++ expr-- () [] . ?.前缀操作-expr !expr ~expr ++expr --expr乘除* / % ~...
函数 定义 可选参数 可选参数 默认值 命名参数 默认值 函数内定义 Funcation 返回函数对象 匿名函数 下面代码定义了只有一个参数 item 且没有参数类型的匿名方...
注释 单行注释 多行注释 一般用在需要说明 类 函数 功能 输入 输出 文档注释 类、函数 请用 /// 方式定义,后期导出文档有帮助