Dart dart:mirrors 库

本文介绍了Dart的dart:mirrors库,它提供了内省和动态调用的功能。内省允许程序检查自身结构,动态调用则允许在运行时按需调用方法。dart:mirrors库不稳定,API可能变化。文章详细讨论了库中的各种镜像类如ClassMirror、InstanceMirror等,以及相关函数如reflect、reflectClass。
摘要由CSDN通过智能技术生成

Dart中的基本反射,支持内省和动态调用。

内省是运行程序可以检查其自身结构的反射子集。例如,一个打印出任意对象的所有成员名称的函数。

动态调用是指在编译时不按字面指定评估代码的能力,例如调用一个其名称作为参数提供的方法(因为它在数据库中查找,或者由用户以交互方式提供)。

如何解释这个库的文档

通常,Dart声明的名称使用Symbol类的实例表示。 每当doc讲述一个表示名称的Symbol类的对象时,它就意味着用于构造s的字符串。

文档经常滥用带有Dart伪代码的符号,例如o.x(a),其中o和a被定义为对象;在这些情况下实际意味着o'.x(a')其中o'和a'是分别与o和a绑定的Dart变量。此外,o'和a'被假定为新变量(意味着它们与程序中的任何其他变量不同)

有时文档引用可序列化的对象。当且仅当它是num,bool,String,一个可跨隔离序列化的对象列表,或者带有键和值的Map(这些键和值都可以跨隔离序列化)的实例时,对象才可以跨隔离进行序列化.

状态:不稳定

dart:mirrors库不稳定,其API可能会因用户反馈而略有变化。 该库依赖于平台,因此它具有dart2js和Dart VM的实现。 两者都在开发中,可能还不支持所有操作。

Classes

 

ClassMirror

ClassMirror反映了Dart语言类。.

ClosureMirror

ClosureMirror反映了一个闭包. [...]

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值