热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

javadoc规范介绍

我们知道javadoc是内嵌于JDK中的,因此遵循javadoc规范肯定就是java注释的正统,有了javadoc帮助生成API文档是非常实用的。
快捷键:ctrl+shift+/ 反操作:ctrl+shift+\javadoc可识别的注释:

	/**
	 * 我是注释
	 * 我也是注释
	 * 我还是注释,我们都能被javadoc识别
	 */

3、javadoc规范

遵循javadoc规范,我们就可以使用javadoc命令,生成非常直观易读的API文档,非常方便。
我们在程序中出现的注释可以有意识地分为两种,一种是简易的注释,给我们自己看的,一种是符合javadoc规范的注释,目的是生成易读的文档。
仔细阅读生成的API文档,有三部分需要我们说明,如图:

上面红框的内容都是我添加的注释,是一个简单的Hello类,源码如下,感兴趣可以自己去试试:

/**
  *	@author XXXX
  *	@version 创建时间:2021年1月21日 下午3:22:01
  *	
  */
public class Hello {

	/**
	 * main()方法简述(后面这个dot必不可少).
	 * 

这就是为了测试注释
* 没什么好说明的,只为了说明能出现在这里 * @param args 就是系统配的,没啥说的 * */ public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("hello"); } /** * havaReturn方法就是为了测试javadoc注释规范的. *

我发现只有有返回值的方法才可以使用return标签
* 没有return硬是要用,只会在javadoc时候报错 * @param a 输入的第一个int类型的参数 * @param b 输入的第二个int类型的参数 * @return add 两个数的和运算结果 */ public int haveReturn(int a,int b){ int add=0; add=a+b; return add; } }

有几个要点需要指出:

要想API文档出现作者和版本,不仅要在程序注释中添加@author和@version(需要说明的是,在程序多个地方注释@author也只会在最终文档中显示一次,我建议只注释一次),还要在编译的时候在dos命令中指出:
javadoc -d folder -version -author Hello.java
其中-d folder意思是你把生成的API文档(其实是很多网页组成的)放在folder文件夹中,当然folder也可以是个路径

方法概要 与 方法详细资料 怎么区分呢?

/**
	 * main()方法简述(后面这个dot必不可少).
	 * 

这就是为了测试注释
* 没什么好说明的,只为了说明能出现在这里 * @param args 就是系统配的,没啥说的 * */ public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("hello"); }

你一定发现关于方法的注释都是一大坨,javadoc如何提取概要呢?没错,就只靠一个dot(.),观察我注释里面提到的那个dot,那就是提取概要的关键,dot之前是概要,所有的都是详细介绍(详细介绍是包含概要的)

如何控制生成的文档中的注释排版
我们在程序中能控制住的就是注释的排版,但是这种排版并不被javadoc识别,javadoc发现一行注释,只去掉*和空格之后,就一股脑传过去,注意到生成的文档是HTML类型的,所以只要在程序中注释HTML语法,就能实现编辑API文档格式,不要担心太困难,因为我们只是用一些简单的HTML语法,比如段落

,换行
这些就可以,毕竟注释也不会很长。

@param 参数1 说明 (注意格式)

@return 返回值 说明(注意格式)
有返回值就写,没返回值就不用写,写了反而会报错

其实写类注释、方法注释非常简单,只要在类、方法前敲击/**,再按回车,系统就会自动添加,并且系统如何添加也是我们可以修改的

如何修改新建文件时出现的内容,如何使自动补全的注释受我们控制(待办)

我们从标准类文件中看到这个:

相信这两张图你都不陌生,第一个是写程序时候光标停留可以出现的提示,如果你按照javadoc规范来写注释,那么你自己写的程序也会出现这些极有帮助的提示。第二个是java8 API文档关于String类里的out字段的详细描述,这也是@see的功劳,你写了@see,你自己的项目API文档中也有这样的注释。


推荐阅读
  • 在 POJ1651 的乘法谜题挑战中,如果选手按相反顺序选择卡片,即先选 50,再选 20,最后选 1,则最终得分会有所不同。题目要求输入的第一行包含... 改写后的摘要:在 POJ1651 的乘法谜题挑战中,如果选手按照逆序选取卡片,例如依次选择 50、20 和 1,最终的得分将发生变化。题目首先要求输入的第一行包括... ... [详细]
  • 资源管理器的基础架构包括三个核心组件:1)资源池,用于将CPU和内存等资源分配给不同的容器;2)负载组,负责承载任务并将其分配到相应的资源池;3)分类函数,用于将不同的会话映射到合适的负载组。该系统提供了两种主要的资源管理策略。 ... [详细]
  • AngularJS 进阶指南:第三部分深入解析
    在本文中,我们将深入探讨 AngularJS 的指令模型,特别是 `ng-model` 指令。`ng-model` 指令用于将 HTML 元素与应用程序数据进行双向绑定,支持多种数据类型验证,如数字、电子邮件地址和必填项检查。此外,我们还将介绍如何利用该指令优化表单验证和数据处理流程,提升开发效率和用户体验。 ... [详细]
  • 本文深入解析了Java面向对象编程的核心概念及其应用,重点探讨了面向对象的三大特性:封装、继承和多态。封装确保了数据的安全性和代码的可维护性;继承支持代码的重用和扩展;多态则增强了程序的灵活性和可扩展性。通过具体示例,文章详细阐述了这些特性在实际开发中的应用和优势。 ... [详细]
  • 本文探讨了利用Matlab平台实现同步定位与建图(SLAM)技术的研究。通过详细分析算法原理和实验验证,展示了Matlab在SLAM应用中的强大功能和灵活性。研究结果表明,Matlab不仅能够高效处理复杂的SLAM任务,还能为研究人员提供便捷的开发环境,加速算法的测试与优化。 ... [详细]
  • 在最近的学习过程中,我对Vue.js中的Prop属性有了更深入的理解,并认为这一知识点至关重要,因此在此记录一些心得体会。Prop属性用于在组件之间传递数据。由于每个组件实例的作用域都是独立的,无法直接引用父组件的数据。通过使用Prop,可以将数据从父组件安全地传递到子组件,确保数据的隔离性和可维护性。 ... [详细]
  • `chkconfig` 命令主要用于管理和查询系统服务在不同运行级别中的启动状态。该命令不仅能够更新服务的启动配置,还能检查特定服务的当前状态。通过 `chkconfig`,管理员可以轻松地控制服务在系统启动时的行为,确保关键服务正常运行,同时禁用不必要的服务以提高系统性能和安全性。本文将详细介绍 `chkconfig` 的各项参数及其使用方法,帮助读者更好地理解和应用这一强大的系统管理工具。 ... [详细]
  • Windows环境下RabbitMQ安装详尽指南
    Windows环境下RabbitMQ安装详尽指南 ... [详细]
  • 如何利用Java 5 Executor框架高效构建和管理线程池
    Java 5 引入了 Executor 框架,为开发人员提供了一种高效管理和构建线程池的方法。该框架通过将任务提交与任务执行分离,简化了多线程编程的复杂性。利用 Executor 框架,开发人员可以更灵活地控制线程的创建、分配和管理,从而提高服务器端应用的性能和响应能力。此外,该框架还提供了多种线程池实现,如固定线程池、缓存线程池和单线程池,以适应不同的应用场景和需求。 ... [详细]
  • 在VS2013中编译FFMPEG时遇到的问题及解决方案
    在使用VS2013编译旧版本FFMPEG库时遇到了一些问题,因为官方并未提供预编译的LIB和DLL文件。由于对Linux环境不熟悉,只能在Windows环境下进行配置和编译。具体步骤如下:首先,下载FFMPEG的源代码;然后,安装必要的编译工具和依赖项;接着,配置Visual Studio 2013的项目设置;最后,解决编译过程中出现的各种错误和警告。通过这些步骤,最终成功编译出所需的FFMPEG库文件。 ... [详细]
  • 在探讨Hibernate框架的高级特性时,缓存机制和懒加载策略是提升数据操作效率的关键要素。缓存策略能够显著减少数据库访问次数,从而提高应用性能,特别是在处理频繁访问的数据时。Hibernate提供了多层次的缓存支持,包括一级缓存和二级缓存,以满足不同场景下的需求。懒加载策略则通过按需加载关联对象,进一步优化了资源利用和响应时间。本文将深入分析这些机制的实现原理及其最佳实践。 ... [详细]
  • 今天已经下载了 Visual Studio 2005 Beta 2 标准版,目前正在尝试安装,但似乎遇到了一些问题,安装未能成功。将进一步排查原因。该版本支持 .NET Framework 2.0.41202。 ... [详细]
  • 单链表的高效遍历及性能优化策略
    本文探讨了单链表的高效遍历方法及其性能优化策略。在单链表的数据结构中,插入操作的时间复杂度为O(n),而遍历操作的时间复杂度为O(n^2)。通过在 `LinkList.h` 和 `main.cpp` 文件中对单链表进行封装,我们实现了创建和销毁功能的优化,提高了单链表的使用效率。此外,文章还介绍了几种常见的优化技术,如缓存节点指针和批量处理,以进一步提升遍历性能。 ... [详细]
  • CTF竞赛中文件上传技巧与安全绕过方法深入解析
    CTF竞赛中文件上传技巧与安全绕过方法深入解析 ... [详细]
  • 如何使用Python去除字符串中的非中文字符[Python编程技巧]
    在 Python 中,可以通过正则表达式来实现去除字符串中的非中文字符。具体方法是使用 `re` 模块中的 `re.sub()` 函数,配合正则表达式 `[^u4e00-u9fa5]` 来匹配并替换掉所有非中文字符,从而保留字符串中的中文部分。这种方法简洁高效,适用于多种文本处理场景。 ... [详细]
author-avatar
xiaojin
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有