当前位置: 首页 > news >正文

Java 文档注释

Java 文档注释

目录

Java 文档注释

javadoc 标签

 

文档注释

javadoc输出什么

实例


 

Java只是三种注释方式。前两种分别是// 和/* */,第三种被称作说明注释,它以/** 开始,以 */结束。

说明注释允许你在程序中嵌入关于程序的信息。你可以使用javadoc工具软件来生成信息,并输出到HTML文件中。

说明注释,是你更加方面的记录你的程序的信息。

 

javadoc 标签

javadoc工具软件识别以下标签:

标签描述示例
@author标识一个类的作者@author description
@deprecated指名一个过期的类或成员@deprecated description
{@docRoot}指明当前文档根目录的路径Directory Path
@exception标志一个类抛出的异常@exception exception-name explanation
{@inheritDoc}从直接父类继承的注释Inherits a comment from the immediate surperclass.
{@link}插入一个到另一个主题的链接{@link name text}
{@linkplain}插入一个到另一个主题的链接,但是该链接显示纯文本字体Inserts an in-line link to another topic.
@param说明一个方法的参数@param parameter-name explanation
@return说明返回值类型@return explanation
@see指定一个到另一个主题的链接@see anchor
@serial说明一个序列化属性@serial description
@serialData说明通过writeObject( ) 和 writeExternal( )方法写的数据@serialData description
@serialField说明一个ObjectStreamField组件@serialField name type description
@since标记当引入一个特定的变化时@since release
@throws和 @exception标签一样.The @throws tag has the same meaning as the @exception tag.
{@value}显示常量的值,该常量必须是static属性。Displays the value of a constant, which must be a static field.
@version指定类的版本@version info

 

文档注释

在开始的/**之后,第一行或几行是关于类、变量和方法的主要描述.

之后,你可以包含一个或多个何种各样的@标签。每一个@标签必须在一个新行的开始或者在一行的开始紧跟星号(*).

多个相同类型的标签应该放成一组。例如,如果你有三个@see标签,可以将它们一个接一个的放在一起。

下面是一个类的说明注释的示例:

/*** This class draws a bar chart.
* @author Zara Ali
* @version 1.2
*/

 

javadoc输出什么

javadoc工具将你Java程序的源代码作为输入,输出一些包含你程序注释的HTML文件。

每一个类的信息将在独自的HTML文件里。javadoc也可以输出继承的树形结构和索引。

由于javadoc的实现不同,工作也可能不同,你需要检查你的Java开发系统的版本等细节,选择合适的Javadoc版本。

实例

下面是一个使用说明注释的简单实例。注意每一个注释都在它描述的项目的前面。

在经过javadoc处理之后,SquareNum类的注释将在SquareNum.html中找到。

import java.io.*;/**
* This class demonstrates documentation comments.
* @author Ayan Amhed
* @version 1.2
*/
public class SquareNum {/*** This method returns the square of num.* This is a multiline description. You can use* as many lines as you like.* @param num The value to be squared.* @return num squared.*/public double square(double num) {return num * num;}/*** This method inputs a number from the user.* @return The value input as a double.* @exception IOException On input error.* @see IOException*/public double getNumber() throws IOException {InputStreamReader isr = new InputStreamReader(System.in);BufferedReader inData = new BufferedReader(isr);String str;str = inData.readLine();return (new Double(str)).doubleValue();}/*** This method demonstrates square().* @param args Unused.* @return Nothing.* @exception IOException On input error.* @see IOException*/public static void main(String args[]) throws IOException{SquareNum ob = new SquareNum();double val;System.out.println("Enter value to be squared: ");val = ob.getNumber();val = ob.square(val);System.out.println("Squared value is " + val);}
}

如下,使用javadoc工具处理SquareNum.java文件:

$ javadoc SquareNum.java
Loading source file SquareNum.java...
Constructing Javadoc information...
Standard Doclet version 1.5.0_13
Building tree for all the packages and classes...
Generating SquareNum.html...
SquareNum.java:39: warning - @return tag cannot be used\in method with void return type.
Generating package-frame.html...
Generating package-summary.html...
Generating package-tree.html...
Generating constant-values.html...
Building index for all the packages and classes...
Generating overview-tree.html...
Generating index-all.html...
Generating deprecated-list.html...
Building index for all classes...
Generating allclasses-frame.html...
Generating allclasses-noframe.html...
Generating index.html...
Generating help-doc.html...
Generating stylesheet.css...
1 warning
$

 

http://www.lryc.cn/news/181085.html

相关文章:

  • 【多媒体技术与实践】多媒体计算机系统概述
  • DirectX 3D C++ 圆柱体的渲染(源代码)
  • 搭建前端框架
  • 2310C++构造对象
  • nginx多文件组织
  • 扩容LVM卷导致lvm元数据丢失的恢复过程
  • 【MySQL教程】| (1-1) 2023MySQL-8.1.0 安装教程
  • 数据大屏定时请求后端数据
  • 数据结构--队列
  • Python绘图系统25:新增8种绘图函数
  • (二) gitblit用户使用教程
  • 8.3Jmeter使用json提取器提取数组值并循环(循环控制器)遍历使用
  • SNERT预备队招新CTF体验赛-Misc(SWCTF)
  • MySql017——组合查询
  • 【0224】源码分析RelFileNode对smgr访问磁盘表文件的重要性(2)
  • 2310C++λ中完美转发
  • 【C++11】std::function 包装器(又叫适配器),std::bind 绑定
  • Linux系统编程系列之线程
  • CV面试知识点总结
  • Centos一键安装、切换各版本JDK
  • JavaWeb项目:smbms(mysql)
  • shell脚本的多线程介绍
  • 周记之反思
  • 信创办公–基于WPS的EXCEL最佳实践系列 (数据整理复制粘贴)
  • 二极管的直流等效电路和微变等效电路
  • Python无废话-基础知识字典Dictionary详讲
  • ChatGPT多模态升级,支持图片和语音,体验如何?
  • (SAR)Sentinel-1影像自动下载
  • 设计模式10、外观模式Facade
  • 华为数通方向HCIP-DataCom H12-831题库(单选题:181-200)