[TOC]
Dart支持单行注释、多行注释和文档注释。
## 单行注释
单行注释以//开头。在//和行尾之间的所有内容都被Dart编译器忽略。
~~~
void main() {
// TODO: refactor into an AbstractLlamaGreetingFactory?
print('Welcome to my Llama farm!');
}
~~~
## 多行注释
多行注释以/*开头,以*/结尾。在/*和*/之间的所有内容都被Dart编译器忽略(除非注释是文档注释;见下一节)。多行注释可以嵌套
~~~
void main() {
/*
* This is a lot of work. Consider raising chickens.
Llama larry = Llama();
larry.feed();
larry.exercise();
larry.clean();
*/
}
~~~
## 文档注释
文档注释是以///或/*开头的多行或单行注释。在连续的行上使用///和多行文档注释具有相同的效果。
在文档注释中,Dart编译器会忽略所有文本,除非它被括在括号中。使用括号,您可以引用类、方法、字段、顶级变量、函数和参数。括号中的名称在文档化程序元素的词法范围内解析。
这里有一个引用其他类和参数的文档注释示例:
~~~
/// A domesticated South American camelid (Lama glama).
///
/// Andean cultures have used llamas as meat and pack
/// animals since pre-Hispanic times.
class Llama {
String name;
/// Feeds your llama [Food].
///
/// The typical llama eats one bale of hay per week.
void feed(Food food) {
// ...
}
/// Exercises your llama with an [activity] for
/// [timeLimit] minutes.
void exercise(Activity activity, int timeLimit) {
// ...
}
}
~~~
在生成的文档中,[Food]成为了与Food类的API文档的链接。
要解析Dart代码并生成HTML文档,可以使用[SDK的文档生成工具]。有关生成文档的示例,请参阅[Dart API文档]。有关如何构造注释的建议,请参阅[Dart文档注释的指南]。