JDK 工具学习系列(三):javadoc 命令实用教程

JDK 工具学习系列(三):javadoc 命令实用教程

javadoc - generate HTML pages of API documentation from Java source files


1. javadoc 简介

javadoc 是 JDK 自带的文档生成工具,可以根据 Java 源代码中的注释,自动生成结构化、可浏览的 HTML API 文档。它是 Java 项目标准的文档工具。


2. 基本用法

2.1 编写带 javadoc 注释的 Java 类

java 复制代码
/**
 * 这是一个演示用的 HelloJavadoc 类。
 * @author YourName
 */
public class HelloJavadoc {
    /**
     * 打印问候信息。
     * @param name 用户名
     */
    public void sayHello(String name) {
        System.out.println("Hello, " + name + "!");
    }
}

2.2 生成文档

在命令行输入:

powershell 复制代码
javadoc -d doc HelloJavadoc.java
  • -d doc 表示将文档输出到 doc 目录(没有会自动创建)

2.3 查看文档

用文件管理器打开 doc/index.html,即可浏览自动生成的 API 文档。


3. javadoc 注释语法与常用标签

3.1 基本语法

  • 注释以 /** ... */ 包裹,写在类、方法、字段前

3.2 常用标签

  • @author:作者
  • @version:版本
  • @param:方法参数说明
  • @return:返回值说明
  • @throws@exception:抛出的异常说明
  • @see:参考链接
  • @since:自哪个版本起有
  • @deprecated:标记已废弃

示例:

java 复制代码
/**
 * 计算两个整数的和。
 * @param a 第一个整数
 * @param b 第二个整数
 * @return 两数之和
 * @throws IllegalArgumentException 如果参数不合法
 * @see java.lang.Math
 */
public int add(int a, int b) throws IllegalArgumentException {
    return a + b;
}

4. 高级用法

4.1 内联标签

  • {@code ...}:代码样式
  • {@link ...}:插入链接到类或方法
  • {@inheritDoc}:继承父类或接口的 javadoc 注释

示例:

java 复制代码
/**
 * 用法示例:{@code Example ex = new Example();}
 * 参考 {@link #add(int, int)}
 */

4.2 支持 HTML 标签

可以在注释中使用 <p>, <ul>, <li>, <pre> 等 HTML 标签美化文档。


5. 常见问题

  • 警告:use of default constructor, which does not provide a comment
    说明类没有显式声明构造方法,建议手动添加带注释的构造方法。

6. 参考资料


通过本教程,你可以快速上手 javadoc 工具,为你的 Java 项目生成专业的 API 文档,让代码更易于维护和分享!

相关推荐
毕设源码-郭学长27 分钟前
【开题答辩全过程】以 某地红十字会门户网站为例,包含答辩的问题和答案
java
林夕sama28 分钟前
多线程基础(四)
java·开发语言
Java成神之路-37 分钟前
深入 JVM:G1 垃圾回收器原理与实现细节
java·jvm
似水明俊德1 小时前
04-C#.Net-委托和事件-面试题
java·开发语言·面试·c#·.net
好家伙VCC1 小时前
# 发散创新:用 Rust构建高性能游戏日系统,从零实现事件驱动架构 在现代游戏开发中,**性能与可扩展性**是核心命题。传统基于
java·python·游戏·架构·rust
爱笑的源码基地1 小时前
门诊his系统源码,中西医结合的数字化门诊解决方案
java·spring boot·源码·二次开发·门诊系统·云诊所系统·诊所软件源码
庞轩px1 小时前
缓存Key设计的“七要七不要”
java·jvm·redis·缓存
小璐资源网1 小时前
Java 21 新特性实战:虚拟线程详解
java·开发语言·python
SimonKing2 小时前
全网爆火的OpenClaw保姆级教程Linux版,它来了。
java·后端·程序员