Files
OnJava8/docs/book/Appendix-Javadoc.md
2019-09-21 12:58:42 +08:00

55 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[TOC]
<!-- Appendix: Javadoc -->
# 附录:文档注释
编写代码文档的最大问题可能是维护该文档。如果文档和代码是分开的那么每次更改代码时更改文档都会变得很繁琐。解决方案似乎很简单将代码链接到文档。最简单的方法是将所有内容放在同一个文件中。然而要完成这完整的画面您需要一个特殊的注释语法来标记文档以及一个工具来将这些注释提取为有用的表单中。这就是Java所做的。
提取注释的工具称为Javadoc它是 JDK 安装的一部分。它使用Java编译器中的一些技术来寻找特殊的注释标记。它不仅提取由这些标记所标记的信息还提取与注释相邻的类名或方法名。通过这种方式您就可以用最少的工作量来生成合适的程序文档。
Javadoc输出为一个html文件您可以使用web浏览器查看它。对于Javadoc您有一个简单的标准来创建文档因此您可以期望所有Java libraries都有文档。
此外您可以编写自己的Javadoc处理程序doclet对于 Javadoc例如以不同的格式生成输出
以下是对Javadoc基础知识的介绍和概述。在 JDK 文档中可以找到完整的描述。
## 句法规则
所有Javadoc指令都发生在以 **/**** 开头(但仍然以 ***/** 结尾)的注释中。
使用Javadoc有两种主要方法:
嵌入HTML或使用“doc标签”。独立的doc标签是指令它以 **@** 开头,放在注释行的开头。(然而,前面的 ***** 将被忽略。)可能会出现内联doc标签
Javadoc注释中的任何位置也可以以一个 **@** 开头,但是被花括号包围。
有三种类型的注释文档,它们对应于注释前面的元素:类、字段或方法。也就是说,类注释出现在类定义之前,字段注释出现在字段定义之前,方法注释出现在方法定义之前。举个简单的例子:
```java
// javadoc/Documentation1.java
/** 一个类注释 */
public class Documentation1 {
/** 一个属性注释 */
public int i;
/** 一个方法注释 */
public void f() {}
}
```
Javadoc处理注释文档仅适用于 **公共****受保护** 的成员。
默认情况下,将忽略对 **私有成员** 和包访问成员的注释(请参阅["隐藏实现"](/docs/book/07-Implementation-Hiding.md)一章),并且您将看不到任何输出。
这是有道理的,因为仅客户端程序员的观点是,在文件外部可以使用 **公共成员****受保护成员** 。 您可以使用 **-private** 标志和包含 **私人** 成员。
要通过Javadoc处理前面的代码命令是
**javadoc Documentation1.java**
这将产生一组HTML文件。 如果您在浏览器中打开index.html您将看到结果与所有其他Java文档具有相同的标准格式因此用户对这种格式很熟悉并可以轻松地浏览您的类。
<!-- 分页 -->
<div style="page-break-after: always;"></div>