使用元数据提供关于代码的附加信息。元数据注释以字符@开头,后跟对编译时常量(如deprecated)的引用或对常量构造函数的调用。
所有Dart代码都可以使用两个注释:@deprecated和@override。有关使用@override的示例,请参见扩展类。这里有一个使用@deprecated注释的例子:
~~~
class Television {
/// _Deprecated: Use [turnOn] instead._
@deprecated
void activate() {
turnOn();
}
/// Turns the TV's power on.
void turnOn() {...}
}
~~~
您可以定义自己的元数据注释。这里有一个定义带有两个参数的@todo注释的示例:
~~~
library todo;
class Todo {
final String who;
final String what;
const Todo(this.who, this.what);
}
~~~
这里有一个使用@todo注释的例子:
~~~
import 'todo.dart';
@Todo('seth', 'make this do something')
void doSomething() {
print('do something');
}
~~~
元数据可以出现在库、类、类型定义、类型参数、构造函数、工厂、函数、字段、参数或变量声明之前,也可以出现在导入或导出指令之前。您可以使用反射在运行时检索元数据。