8

是否有计划
为类、方法、方法的参数 引入属性,
例如 C# 或 Java 属性?

    [测试]
    类 SomeClass
    {
        [测试]
        一些方法()
    }


或者

    @测试
    类 SomeClass
    {
        @测试
        someMethod(@Test int 参数)
    }

对于许多框架来说,这将非常有用

4

3 回答 3

7

在 dart 中,它们被称为metadata / annotation。语法非常接近java。这是一个例子:

@Test testMethod() {}

在 Dart 规范中,您可以阅读:

元数据由一系列注释组成,每个注释都以字符 @ 开头,后跟一个以标识符开头的常量表达式。如果表达式不是以下之一,则为编译时错误:

  • 对编译时常量变量的引用。
  • 对常量构造函数的调用。

[……]

元数据可以出现在库、类、typedef、类型参数、构造函数、工厂、函数、字段、参数或变量声明之前以及导入或导出指令之前。

dart:core中已经预定义了一些注释。特别是和。@override@deprecated@proxy

于 2012-11-06T21:02:50.730 回答
4

Dart 已经有了注解,在某些方面类似于 Java,只是还没有在很多地方使用,而且还不能通过反射访问它们。

见这篇文章: http: //news.dartlang.org/2012/06/proposal-to-add-metadata-to-dart.html

于 2012-11-06T21:02:22.190 回答
2

下面简单介绍一下 Dart 元库中目前可用的两个元数据注解:

Dart 元数据是你的朋友。

这并不妨碍您使用自己的工具,但是这两个工具与 Dart 编辑器集成。

于 2012-11-06T21:23:07.217 回答