android - 什么是 Swift “扩展”的 dart 等价物?
问题描述
关键字/保留字extension
通过使用标准框架中的现有类而不对它们进行子类化,可以使代码更加简洁。Dart 中是否有允许相同行为的关键字?
extension Double {
var mm: Double { return self / 1_000.0 }
}
let oneInch = 25.4.mm
print("One inch is \(oneInch) meters")
解决方案
他们终于来了
从 dart 版本 2.6 开始(不是 100% 确定)。
class Foo {
printFoo() {
print("Foo");
}
}
extension Bar on Foo {
printBar() {
print("Bar");
}
}
void main() {
final foo = Foo();
foo.printFoo();
foo.printBar();
}
印刷:
富
酒吧
你可以在飞镖垫上试一试。
推荐阅读
- c++ - 以原子方式访问不是`std::atomic`的变量
- javascript - Jquery:如何创建具有动态名称的普通对象?
- ios - iOS:在用户点击时将字符添加到字符串
- python - 如何检查哪个 Facebook 帐户用户在其 PC 中登录,以更新该 Facebook 用户的相应令牌
- php - 安全的 API 连接
- c# - 根据计数显示多个文本框并插入数据库 Asp.net C#
- javascript - 等待不在 Tensorflow.js 的 model.fit 上工作
- powershell - VSTS 将 Key Vault 证书导入 HostedVS 构建上的文件
- jenkins - Jenkins Job Import 插件的任何文档?
- django - 如何将 geckodriver 和 chromedriver 安装到本地环境