前言

Java 之 Annotation(注解)介绍

之前有写过一篇 Java 注解的介绍。 参考以上链接。

虽然注解、注释只相差一个字,但是用法就差异很大。

总体一句话, 注解给编译器看, 注释是给人看的。

基于此的话, 对于一个方法来说:

1. 把这个方法的作用, 输入,输出描述清楚就可以了,更多的可以加上一些作者呀,版本呀这样一些信息

2. 注释编排的美观一些

做到这两点应该就可以了。 举个例子:

 /******************************************************************************** NAME:         usage* DESCRIPTION: XXX* ARGUMENTS: N/A* RETURN:       * AUTHOR:        oscar999* VERSION:      V0.1*******************************************************************************/

看上去这是一个不错的注释^^.

但是对于Java 语言来说, 注释被赋予了更多的功能。 就是你可以使用javadoc 这个功能把代码中的注释导出到  html 的文件中。

如果你的代码是共用性很高的代码的话, 这份文档就是一份API的参考文档, 类似Java API.

所以, 要产生出这样的文档,就要遵循java 定义的一些注释规范, 才能产生出规范的文档出来。

Java 类方法的标准注释

还是从类的方法的注释说起。

    /*** Read a line of text.  A line is considered to be terminated by any one* of a line feed ('\n'), a carriage return ('\r'), or a carriage return* followed immediately by a linefeed.** @param      ignoreLF1  If true, the next '\n' will be skipped
     * @param      ignoreLF2  If true, the next '\n' will be skipped
     *     * @return     A String containing the contents of the line, not including     *             any line-termination characters, or null if the end of the     *             stream has been reached     *      * @see        java.io.LineNumberReader#readLine()     *     * @exception  IOException  If an I/O error occurs     */

(不去关注以上注释的意义,只关注其定义的样式)

1. 首先看最上面的 “Read a line of text.  A line .. ” 这一段是对这个方法的一些描述。

第一个句号前面的部分, 也就是 “Read a line of text.” 会出现在 “方法摘要” 中

全部的描述信息 会出现在“ 方法详细信息” 中

2. @param 定义的是方法的输入参数,(可以添加多个)出现在“ 方法详细信息” 中。(参数和参数描述之间使用空格隔开, 在产生的文档中转成了  -)

3. @return  返回值的描述

4. @see  参考的描述

5. @exception 异常抛出的描述

美观考虑, 不同类的标签可以换一行显示, 比如 @param 和 @return 直接空一行。

Java 类标准注释

类的注释和方法注释的格式基本相同。 区别的地方:

1. 放置的位置不同。 类的注释放在类定义的上面, 方法的注释放在方法定义的上面。

2. 类的注释比较会使用   @version  @author  @since 这样的标签。

看模板

/** will buffer the input from the specified file.  Without buffering, each
* invocation of read() or readLine() could cause bytes to be read from the
* file, converted into characters, and then returned, which can be very
* inefficient.
*
*
* Test Description
*
* <p> Programs that use DataInputStreams for textual input can be localized by
* replacing each DataInputStream with an appropriate BufferedReader.
*
* @see FileReader
* @see InputStreamReader
*
* @version     0.1, 11/20/13
* @author  oscar999
* @since   JDK1.5
*/

doc 中显示的效果是:

同样, 描述的第一句出现在“类概要”中。

类的详细信息显示如下:

值得注意的是 description 中<p> 的使用。 如果没有加<p> , 在java code 中不管是否有换行,产生的doc 中都不换行。 加上<p> 的话, doc 中出现换行。

补充

补充一下, 产生javadoc的方法:

1. 命名行方式:  javadoc  + 参数

2. 使用Eclipse IDE 导出

如果在Eclipse IDE 中, 在源文件或是项目上右键单击 , 选 Export  --->

Java --> Javadoc 就可以产生了。

Java 之 注释介绍相关推荐

  1. java类的注释模板_IDEA添加Java类注释模版的方法

    本文介绍了idea添加java类注释模版的方法,分享给大家,具体如下: idea版本:intellij idea 2017.2.5 x64 eclipse能在类上方输入/**,回车添加类注释模版,但i ...

  2. java类功能说明注释添加,IDEA添加Java类注释模版的方法

    本文介绍了idea添加java类注释模版的方法,分享给大家,具体如下: idea版本:intellij idea 2017.2.5 x64 eclipse能在类上方输入/**,回车添加类注释模版,但i ...

  3. java处理注释_Java注释处理器

    java处理注释 本文是我们名为" 高级Java "的学院课程的一部分. 本课程旨在帮助您最有效地使用Java. 它讨论了高级主题,包括对象创建,并发,序列化,反射等. 它将指导您 ...

  4. java处理注释_如何处理Java注释

    java处理注释 Java 8的一项很酷的新功能是对lambda表达式的支持. Lambda表达式在很大程度上依赖于FunctionalInterface 注释 . 在本文中,我们将介绍注释以及如何处 ...

  5. 初识JAVA及JAVA基本数据类型介绍!

    目录 1.JAVA环境 1.找到此电脑,右键选择属性. 2.点击高级系统设置. 3.找到环境变量. 4.点击新建 5.添加以下三种变量. 6.最后检查环境变量知否设置成功. 2.JAVA代码 2.1j ...

  6. Java的注释(详细版)

    注释是对代码进行必要的说明,以便于后期的修改.维护和升级.Java的注释分为三种:第一种是**单行注释**:用双斜杠"//"来进行实例://单行注释第二种是**文档注释**:用斜杠 ...

  7. Java 动态代理介绍及用法

    Java 动态代理介绍及用法 一,静态代理模式的特点 在之前的文章中 java代理模式 已经介绍里java里的(静态)代理模式 下面是上文静态代理类的例子: public class ProxyBea ...

  8. Java说明注释(Doc注释)

    Java说明注释以 /** 开始,以 */结束. 说明注释允许你在程序中嵌入关于程序的信息.你可以使用 javadoc 工具软件来生成信息,并输出到HTML文件中,使你更加方便的记录你的程序信息. 文 ...

  9. 解决eclipse中java代码注释变成乱码的问题

    Eclipse JAVA文件注释乱码将别人的项目或JAVA文件导入到自己的Eclipse中时,常常会出现JAVA文件的中文注释变成乱码的情况,主要原因就是别人的IDE编码格式和自己的Eclipse编码 ...

最新文章

  1. JAVA用JNI方法调用C代码实现HelloWorld
  2. 1021. 个位数统计 (15)
  3. 学Linux从编译命令开始——arm-linux-gcc常用参数讲解
  4. boid模型的Matlab程序,动物集群运动行为模型系列之五-—本科毕业设计.doc
  5. 百度研究院|2020年10大人工智能科技趋势
  6. 中国女足3:2逆转!支付宝:1300万奖金已到位 蒙牛奖励千万现金
  7. 数据分析写作——程序员的另外一种输出
  8. 深度学习:循环神经网络RNN的变体
  9. 机器学习笔记(二)线性回归模型实现
  10. Error fetching https://gems.ruby-china.org/: bad response Not Found 404 (https://gems.ruby-china.or
  11. 39. 二叉树的深度(C++版本)
  12. python都有什么包装_Python包装
  13. 软件测试金九银十即将到来,求职套路多你有多大把握拿offer
  14. VS2017注册之找不到输入key的地方的解决方法
  15. 公众号网课答案查询系统
  16. 酱香科技不在YYDS了,市盈率50倍的白酒,要回调到25倍的市盈率?泡沫要破灭了
  17. 如何在没有密码的情况下打开 Vivo 手机
  18. SSM+服装管理系统 毕业设计-附源码080948
  19. MySQLdb安装与使用
  20. 人工智能轨道交通行业周刊-第33期(2023.2.6-2.12)

热门文章

  1. 13.python中的字典
  2. java 程序执行原理
  3. 牙龈出血试试四个食疗方_新闻中心_新浪网
  4. 编写HTML代码常见错误以及解决方法?
  5. 解决thrift: ···No such file or directory问题
  6. 解决VS2013+IE11调试DevExpress ASP.NET MVC的性能问题
  7. vue-cli项目在IE下运行钩子函数抛出异常“ReferenceError: “Promise”未定义“”的解决办法
  8. 解决方案,org.hibernate.LazyInitializationException: could not initialize proxy - no Session
  9. 【方案分享】2021快手品牌号专项营销方案.pdf(附下载链接)
  10. 【报告分享】2020中国248家独角兽报告.pdf(附下载链接)