Javadoc 常用标签及用法

基础标签

1.@param- 参数说明

/** * 计算两个数的和 * @param a 第一个加数 * @param b 第二个加数 */ public int add(int a, int b) { return a + b; }

2.@return- 返回值说明

/** * 获取用户姓名 * @return 用户的姓名,如果不存在返回null */ public String getName() { return this.name; }

3.@throws/@exception- 异常说明

/** * 加载配置文件 * @throws IOException 当配置文件不存在或无法读取时抛出 * @throws IllegalArgumentException 当配置文件格式错误时抛出 */ public void loadConfig() throws IOException { // 方法实现 }

4.@deprecated- 废弃说明

/** * 旧版本的登录方法 * @deprecated 从v2.0开始废弃,请使用 {@link #login(String, String)} 方法 * @see #login(String, String) */ @Deprecated public void oldLogin() { // 旧实现 }

5.@see- 相关链接

/** * 用户登录验证 * @see UserManager#authenticate(String, String) * @see <a href="http://example.com/auth">认证文档</a> * @see "Java编程规范" */ public boolean login(String username, String password) { // 方法实现 }

6.@since- 版本说明

/** * 新的数据加密方法 * @since 1.5.0 */ public String encryptData(String data) { // 方法实现 }

7.@version- 版本号

/** * 数据库连接工具类 * @version 2.1.0 */ public class DBUtil { // 类实现 }

8.@author- 作者信息

/** * 字符串工具类 * @author 张三 * @author 李四 */ public class StringUtils { // 类实现 }

内联标签(在描述中使用)

9.{@code}- 代码显示

/** * 设置文件路径 * 例如:{@code setPath("/usr/local/bin")} * 注意:路径必须是绝对路径 */ public void setPath(String path) { this.path = path; }

10.{@link}/{@linkplain}- 内部链接

/** * 创建用户实例 * 使用示例: * <pre> * User user = new User(); * user.setName("张三"); * user.setAge(25); * </pre> * * 更多信息请参考 {@link UserManager#createUser(User)} * 或查看 {@linkplain http://example.com/docs 用户文档} */ public class User { private String name; private int age; }

11.{@value}- 常量值引用

/** * 应用程序常量定义 */ public class AppConstants { /** * 默认超时时间(毫秒) * @see #DEFAULT_RETRY_COUNT */ public static final int DEFAULT_TIMEOUT = 5000; /** * 默认重试次数:{@value #DEFAULT_RETRY_COUNT} */ public static final int DEFAULT_RETRY_COUNT = 3; }

12.{@literal}- 原样显示文本

/** * 比较两个对象 * 注意:{@literal x < y} 表示x小于y * 如果不使用{@literal},<会被解析为HTML标签 */ public boolean compare(int x, int y) { return x < y; }

高级标签

13.@serial- 序列化字段说明

/** * 用户序列化类 */ public class User implements Serializable { /** * @serial 用户的唯一标识符 */ private long id; /** * @serialField name String 用户姓名 * @serialField age int 用户年龄 */ private static final ObjectStreamField[] serialPersistentFields = { new ObjectStreamField("name", String.class), new ObjectStreamField("age", int.class) }; }

14.@serialData- 序列化数据说明

/** * 自定义序列化 * @serialData 首先写入name(String),然后写入age(int) */ private void writeObject(ObjectOutputStream out) throws IOException { out.defaultWriteObject(); out.writeUTF(name); out.writeInt(age); }

15.@hidden- 隐藏文档

/** * 内部使用的方法,不对外公开 * @hidden 此方法仅供框架内部使用 */ void internalMethod() { // 内部实现 }

16.{@index}- 创建搜索索引

/** * 处理{@index JSON}格式的数据 * 支持{@index XML}和{@index YAML}格式 */ public class DataProcessor { // 类实现 }

完整示例

/** * 用户管理类 * <p>提供用户的增删改查等操作</p> * * @author 张三 * @author 李四 * @version 3.2.1 * @since 1.0.0 */ public class UserManager { /** * 用户登录验证 * * <p><b>注意:</b>此方法会验证用户密码是否过期</p> * * @param username 用户名,不能为空 * @param password 密码,长度必须大于6位 * @return 登录成功返回true,失败返回false * @throws IllegalArgumentException 当用户名或密码格式错误时抛出 * @throws UserNotFoundException 当用户不存在时抛出 * @throws AccountLockedException 当账户被锁定时抛出 * @see User#validate() * @see #logout() * @since 2.0.0 */ public boolean login(String username, String password) throws IllegalArgumentException, UserNotFoundException, AccountLockedException { // 方法实现 return true; } /** * 旧版登录方法 * @deprecated 从3.0.0开始废弃,请使用 {@link #login(String, String)} * @param username 用户名 * @param password 密码 * @return 登录状态 */ @Deprecated(since = "3.0.0") public boolean oldLogin(String username, String password) { // 旧实现 return false; } }

使用建议

  1. 必选标签@param@return@throws应尽可能使用

  2. 版本控制:使用@since@deprecated管理API生命周期

  3. 交叉引用:使用@see{@link}建立文档间的关联

  4. 代码示例:在复杂方法中使用<pre>{@code ...}</pre>提供示例

  5. HTML标签:可以在描述中使用<p>,<b>,<i>,<ul>,<li>等HTML标签增强可读性

生成文档命令

# 生成标准文档 javadoc -d doc -sourcepath src com.example # 生成带作者和版本信息的文档 javadoc -d doc -sourcepath src -author -version com.example # 生成包含私有成员的文档 javadoc -d doc -sourcepath src -private com.example

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1215480.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2026年不锈钢装饰厂家推荐排行榜:线条、门套、淋浴房、屏风隔断、金属柜与电梯装饰,匠心工艺与时尚设计完美融合

2026年不锈钢装饰厂家推荐排行榜:线条、门套、淋浴房、屏风隔断、金属柜与电梯装饰,匠心工艺与时尚设计完美融合 在现代建筑装饰与室内设计中,不锈钢以其卓越的耐久性、多样的表面处理工艺以及强烈的现代感,已从传…

《构建之法》阅读笔记(团队协作与流程)

团队协作部分的核心在于,通过科学的流程将个人能力整合为高效的集体产出。书中指出,一个成功的软件团队不仅需要优秀的个体,更需要明确的目标、合适的流程与良好的沟通机制。敏捷开发方法,特别是Scrum框架,被重点…

solidity语法

1 ether = 1 000 000 000 gwei  (10⁹ gwei -- 1e9) = 1 000 000 000 000 000 000 wei (10⁸ wei -- 1e18) 学习路径学习区块链基础和solidity和foundry,了解基础的开发- 基础课程:区块链基础,solidity语言开…

学习进度 9

DataFrame 其实是带列名的分布式表格,和 MySQL 里的表、Pandas 里的 DataFrame 逻辑差不多,比纯手写 RDD 算子简单太多。比如之前用 RDD 统计文本行数,得写sc.textFile("file.txt").count(),而 DataFram…

,1月25号

今天依旧。 学习一下java中的接口。 再复习了一下数据库的知识。

2026年电池连接器厂家推荐排行榜:刀片式/弹片式/纽扣式/DC电源插座/Type C/Wafer/XT30/XT60/XT90/新国标2+4,精选高效稳定连接方案

随着全球能源转型的加速和电子设备智能化、便携化趋势的深化,电池作为核心储能单元,其性能与可靠性日益受到关注。而连接器,作为电池与设备之间能量与信号传输的“咽喉要道”,其重要性不言而喻。从新能源汽车的动力…

web3常见术语

RPC RPC = Remote Procedure Call,即“远程过程调用”。 简单来说,就是一个程序(或客户端)可以像调用本地函数/方法一样,向远 端服务器节点(或服务)发出请求,让对方执行某个过程(procedure/方法/函 数),并…

以太坊(世界计算机)

以太坊被称为 “世界计算机”,核心是它突破了比特币仅能处理简单价值转移的局限,靠去中心化架构、图灵完备的智能合约等技术,构建了一个全球可访问、能承载复杂计算与多样化应用的分布式计算平台。下面以计算机五层…

YOLO26改进 - 特征融合 | EFC增强层间特征相关性,通过多尺度特征交互减少冗余信息丢失即插即用

前言 本文介绍了基于增强层间特征相关性&#xff08;EFC&#xff09;的轻量级融合策略及其在 YOLO26中的结合。检测无人机图像小物体具有挑战性&#xff0c;传统多尺度特征融合方法存在不足。EFC 模块通过引入分组的特征聚焦单元&#xff08;GFF&#xff09;增强特征关联性&am…

YOLO26改进 - 特征融合 | 融合Hyper-YOLO混合聚合网络MANet(Mixed Aggregation Network)通过多路径设计实现高效特征学习与模型适应性提升

前言 本文介绍了新型目标检测方法 Hyper - YOLO 及其在 YOLO26中的结合。传统 YOLO 模型颈部设计有局限&#xff0c;为此提出超图计算驱动的语义收集与扩散框架&#xff08;HGCSCS&#xff09;&#xff0c;将视觉特征图转化到语义空间并构建高阶信息传播机制。Hyper - YOLO 在…

汉字阅读开挂了?汉英阅读速度实测对比,效率差出40%+!

汉字阅读开挂了&#xff1f;汉英阅读速度实测对比&#xff0c;效率差出40%&#xff01; 一、 引言&#xff1a;刷文时你没发现的秘密 —— 汉字阅读比英语快多少&#xff1f; 1.1 生活场景切入&#xff1a;为什么读中文资讯 “一目十行”&#xff0c;读英文原文却 “磕磕绊绊…

缓存三剑客困难

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2026年 印刷厂家推荐排行榜:化妆瓶、亚克力、咖啡杯、金属、PC满板、电子产品、汽车零件、遥控面板、医疗器材、罐体印刷,专业定制与高精度工艺之选

2026年印刷厂家推荐排行榜:专业定制与高精度工艺之选 在当今制造业精细化、个性化需求日益增长的背景下,特种印刷技术已成为提升产品附加值、实现品牌差异化竞争的关键环节。无论是化妆品包装的奢华质感、电子产品的…

AI工程师必看!X-Distill技术详解:让机器人仅需10条数据就能学会复杂操作,建议收藏学习!

X-Distill是一种创新的跨架构知识蒸馏技术&#xff0c;解决了机器人视觉中的"数据悖论"问题。该方法通过两步法&#xff1a;先在ImageNet上将大型ViT的视觉知识蒸馏到小型CNN中&#xff0c;再在机器人任务上微调&#xff0c;使仅需10条演示数据的模型就能学习书写、抓…

AI驱动的动态调度:从理论到实践,程序员必备的智能制造核心技能(建议收藏)

制造业正从大批量生产转向多品种小批量生产&#xff0c;不确定性成为常态。传统"以计划为中心"的生产方式难以应对变化&#xff0c;AI驱动的动态调度成为关键解决方案。通过实时感知、策略演化和闭环自调节&#xff0c;动态调度使制造系统从"静态匹配"转向…

NeurIPS 2025多模态表征学习新突破:4篇论文详解

本文介绍了2025年NeurIPS会议上的4篇多模态表征学习论文&#xff0c;分别探讨了有限数据场景下的多模态对齐(STRUCTURE)、模态错位的理论价值、特征因果分解(FCD)方法以及通过视觉嵌入蒸馏(VisPer-LM)提升MLLM视觉感知能力。这些创新方法为解决多模态学习中的数据稀缺、噪声干扰…

亲测BSHM人像抠图镜像,效果惊艳真实体验分享

亲测BSHM人像抠图镜像&#xff0c;效果惊艳真实体验分享 最近在做一批电商商品图的背景替换&#xff0c;需要把真人模特从各种复杂场景中干净利落地抠出来。试过好几款开源模型——MODNet跑得快但头发边缘毛躁&#xff0c;U2-Net细节好却慢得像在等咖啡凉透&#xff0c;Robust…

大模型部署难题破解:并行计算架构详解与实战

本文解析了大模型部署中的并行计算架构&#xff0c;包括模型并行&#xff08;按层或张量拆分&#xff09;、流水线并行和数据并行&#xff0c;以及三者结合的混合并行策略。这些技术解决了大模型显存不足和计算效率问题&#xff0c;使AI产品经理能从"只会用模型"上升…

程序员学习大模型必看:腾讯云智商业产品面试经验,AI商业化思维与未来趋势深度解析(建议收藏)

本文详细记录腾讯云智商业产品三轮面试经验&#xff0c;重点考察商业化思维和AI产品理解。作者分享对AI现状看法&#xff1a;存在泡沫、开源与闭源模型能力接近、小模型专业化趋势&#xff0c;以及AI医疗等未来发展方向。面试中探讨了产品运营与策划区别、AI2B商业模式&#xf…

LangChain、LangFlow、LangGraph:大模型应用开发框架全解析

本文详细解析了LangChain生态中的三大框架&#xff1a;LangChain作为LLM应用的基础框架&#xff0c;提供系统化组织能力&#xff1b;LangFlow是基于LangChain的可视化低代码工具&#xff0c;降低使用门槛&#xff1b;LangGraph则为复杂Agent提供状态机控制。三者定位不同&#…