目录

注释

Dart 支持单行注释、多行注释和文档注释。

单行注释

#

单行注释以 // 开头。 // 和行尾之间的所有内容都被 Dart 编译器忽略。

dart
void main() {
  // TODO: 重构为 AbstractLlamaGreetingFactory?
  print('欢迎来到我的羊驼农场!');
}

多行注释

#

多行注释以 /* 开头,以 */ 结尾。 /**/ 之间的所有内容都被 Dart 编译器忽略(除非注释是文档注释;请参见下一节)。多行注释可以嵌套。

dart
void main() {
  /*
   * 这是很多工作。考虑养鸡。

  Llama larry = Llama();
  larry.feed();
  larry.exercise();
  larry.clean();
   */
}

文档注释

#

文档注释是开头为 ////** 的多行或单行注释。在连续行上使用 /// 与多行文档注释的效果相同。

在文档注释中,分析器会忽略所有文本,除非它包含在方括号中。使用方括号,您可以引用类、方法、字段、顶级变量、函数和参数。方括号中的名称在已记录程序元素的词法作用域中解析。

这是一个带有对其他类和参数引用的文档注释示例:

dart
/// 一种驯养的南美骆驼科动物(羊驼)。
///
/// 安第斯文化自前西班牙时代以来就一直将羊驼用作肉类和驮畜。
///
/// 与任何其他动物一样,羊驼也需要吃东西,
/// 所以不要忘记用一些 [Food] [feed] 它们。
class Llama {
  String? name;

  /// 用 [food] 喂你的羊驼。
  ///
  /// 一只典型的羊驼每周吃一捆干草。
  void feed(Food food) {
    // ...
  }

  /// 用 [activity] 活动让你的羊驼锻炼 [timeLimit] 分钟。
  void exercise(Activity activity, int timeLimit) {
    // ...
  }
}

在类的生成的文档中, [feed] 成为指向 feed 方法文档的链接, 而 [Food] 成为指向 Food 类文档的链接。

要解析 Dart 代码并生成 HTML 文档,您可以使用 Dart 的文档生成工具, dart doc 。 有关生成的文档示例,请参见 Dart API 文档。 有关如何组织注释的建议,请参见 Effective Dart:文档。