摘要:
扩展方法(Extension methods)是Dart语言的另一个高级的特性,我们可以在不改变、不继承原类型或类情况下,给类型或类增加方法,增强其功能。在Java中,我们经常看到StringUtils/MapUtils等String/Map类型的工具类,但是在Dart中,这些工具类统统不需要,因为可以直接给String/Map类增加扩展方法(Extension methods)达到同等目的…… 阅读全文
扩展方法(Extension methods)是Dart语言的另一个高级的特性,我们可以在不改变、不继承原类型或类情况下,给类型或类增加方法,增强其功能。在Java中,我们经常看到StringUtils/MapUtils等String/Map类型的工具类,但是在Dart中,这些工具类统统不需要,因为可以直接给String/Map类增加扩展方法(Extension methods)达到同等目的…… 阅读全文
posted @ 2023-11-04 15:39
老牛啊
阅读(731)
评论(0)
推荐(0)

今天我们来看看Dart语言的一个有趣的特性——可调用对象。对象也可以像函数那样被调用,这个特性是怎么用的呢……
Dart语言和其他面向对象语言一样,子类可以继承父类,获得父类的属性和方法。那么Dart语言,类继承还有什么特性呢……
类方法就是为对象提供一些数据操作的函数,也就是类方法是操作对象的函数。那么在Dart中,类方法到底有哪些特别之处呢……
我们通过类构造函数来创建对象,上文(第14天)我们学到,与Java不同,创建Dart对象时可以省略构造函数之前的new关键字。同时,Dart语言除默认构造函数外,还有命名构造函数,重定向构造函数,常量构造函数和工厂构造函数等……
通过前面13天的学习,对Dart基础有了系统的熟悉,今天我们开始学习Dart类和对象,本文主要学习Dart类,包括类方法,构造器,对象类型,实例变量,隐性接口,类变量和类方法等……
错误也可以理解为异常,代表应用程序在执行过程中的发生了非预期的行为,常见异常比如有空指针、数组越界、网络超时、IO异常等,Dart语言也支持抛出和捕获异常。和Java不同的是,Dart语言只有未检测异常。Dart中的异常需要被捕获并被处理,否则可能导致程序退出……
本文是Dart语言学习的第12天,和前面11天相比,本文可能相对比较简单,因为本文要学习的是Dart语言的控制流,也就是循环和分支。且前面的11天学习中,多多少少都涉及到了控制流,同时对Java或者JavaScript比较熟悉的朋友,可能比较容易上手……
Dart语言是纯面向对象的编程语言,就算是函数(对象的成员函数一般称为方法)也是对象,它也有类型,那么函数也可以作为其他函数的参数,或者赋值给其他变量。除此之外,Dart中的函数还有什么特别之处、它有什么规则和约束……
Pattern模式是Dart 3.0发布的3个高级特性之一,在第09天我们学习了模式的概览和用法,对模式的强大之处有了基本的认识,今天我们来看看Dart中的全部模式类型,总共有15种,它们包括逻辑或、逻辑与、关系、值转换、空检测、空断言、常量、变量、标识符、括号、List列表、Map映射、Record记录、对象和通配符……
Dart 3.0在语法层面共发布了3个高级特性,第一个特性Record记录我们在前面已经学习和探究。今天我们来学习第二个高级类型Pattern模式,由于内容较多,共分2篇文章进行介绍,本文首先介绍模式的概览和用法,包括匹配、解构、在变量申明、赋值、循环、表达式等应用场景……
我们来继续学习Dart语言的类型,包括Dart内置类型、Record记录类型(Dart 3开始支持)、集合类型、泛型和typedef类型别名。在前面的学习中,基础内置类型、集合和泛型都有所涉及和应用,本文我们和其他类型逐一进行介绍……
我们前面完成了Dart语言基础特性的学习,包括基础语法概览、迭代集合、异步编程、Mixin高级特性和变量等。今天我们来学习Dart的库相关知识,包括如何导入库、指定库前缀、导入部分或者排除部分库、延迟导入库等,最后看下Dart中67个关键字作为标识符的一些约束……
前面几天的学习,我们了解了Dart语言的特性(基础语法概览、迭代集合、异步编程和Mixin高级特性)。今天我们深入学习Dart的变量,包括:空安全(Null safety)、变量默认值、延迟变量(late)、final变量和const常量……
浙公网安备 33010602011771号