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

Java 注释

Java 注释

Overview

随着写的程序越来越多,越来越感觉到了 各种注释 越来越重要, 每当我看到一个类库的方法没有方法注释的话,那样这就让我光想骂娘。 作为一个英语学渣+没有一个很大的脑洞,我很难从方法的名字猜到,这个方法的作用。

所以在这里,就想将Java的注释的写法总结一下。

注释种类

//code description
//这是一个单行的注释,一般用来描述一些关键的代码

/*
这是一个多行的注释
多行
多行
好多行
*/
//多行注释 用于注释大段的描述


/*
下面是一个方法的注释

请注意区别方法注释和多行注释
方法注释的开头是 一个斜杠+两个星号
**/

/**
 * 这是一个静态的方法
 *
 * @param arg1 这是一个int类型的参数
 * @param arg2 这是一个String类型的变量
 *
 * @return 返回值的描述
 */
public static int test(int arg1, String arg2) {
    return 0;
}

方法注释

@param

在方法注释中使用 @param [注释名称] 标识参数,在生成注释文档或者在IDE中查看方法说明的时候,那么通过 @param 标识的参数将会生成对应的注释参数。
2018-09-25_14-58-20

/**
 * 这是一个方法
 *
 * @param arg1 参数的描述
 * @param arg2 参数的描述
 */
public static int test(int arg1, String arg2) {
    return 0;
}

@return

@return 用来标识返回值。

2018-09-25_15-01-10

/**
 * 这是一个方法
 *
 * @param arg1 参数的描述
 * @param arg2 参数的描述
 *
 * @return 这是一个返回值
 */
public static int test(int arg1, String arg2) {
    return 0;
}

@throws

@throws 标识方法中可能会抛出的异常。

2018-09-25_15-06-00

/**
 * 这是一个方法
 *
 * @param arg1 参数的描述
 * @param arg2 参数的描述
 * @return 这是一个返回值
 * @throws IllegalArgumentException 异常信息的描述
 */
public static int test(int arg1, String arg2) {
    if (arg1 < 0) {
        throw new IllegalArgumentException("arg1 must be more than 0!");
    }
    return 0;
}

@author

@author 用来标识作者,但是不管是在,生成的代码文档中还有IDE的查看方法的注释,也没有找到生成的Author信息。

@version

@Version 标识版本,..同样没有找到在哪里 ?

@see

@see 标识一个参考。

2018-09-25_15-54-26

/**
 * 这是一个方法
 *
 * @param arg1 参数的描述
 * @param arg2 参数的描述
 * @return 这是一个返回值
 * @throws IllegalArgumentException 异常信息的描述
 * @see Program#test2()
 */
public static int test(int arg1, String arg2) {
    if (arg1 < 0) {
        throw new IllegalArgumentException("arg1 must be more than 0!");
    }
    return 0;
}

public static int test2() {
    return 0;
}
@see 的写法
//如果引用了一个类中的方法的话,那么些可以简写如下
//#方法名 比如 #test2()

//如果是不在一个类中的话,写法如下
//类名#方法名 比如 Program#test2()

@depression

@depression 标识,用来当一个方法或者类已经是被弃用了的话,通过这个标识的注释,来提醒用户调用新的方法或者类。

2018-09-25_16-05-40

/**
 * 这是一个方法
 *
 * @param arg1 参数的描述
 * @param arg2 参数的描述
 * @return 这是一个返回值
 * @deprecated 该方法已经弃用,请使用 test2() 方法
 */
@Deprecated
public static int test(int arg1, String arg2) {
    if (arg1 < 0) {
        throw new IllegalArgumentException("arg1 must be more than 0!");
    }
    return 0;
}

HTML代码

因为我们写的Java注释,最后会通过 javaDoc工具来生成HTML格式的文档,而为了更好的显示效果和阅读体验,所以Java的注释中是支持HTML代码的。

2018-09-25_16-19-04

/**
 * <p>这是一个段落</p>
 * <strong>粗体显示</strong>
 *
 * @param arg1 参数的描述
 * @param arg2 参数的描述
 * @return 这是一个返回值
 * @deprecated 该方法已经弃用,请使用 test2() 方法
 */
@Deprecated
public static int test(int arg1, String arg2) {
    if (arg1 < 0) {
        throw new IllegalArgumentException("arg1 must be more than 0!");
    }
    return 0;
}

IntelliJ IDEA 生成 注释文档

2018-09-25_16-20-49

根据需要填写一些需要的配置

2018-09-25_16-21-13

转载于:https://www.cnblogs.com/slyfox/p/9700188.html

相关文章:

  • ansible debug模块学习笔记
  • idea常用快捷键
  • MySql 用户管理 中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束):...
  • 迎双11十周年,OceanBase 2.0挑战新巅峰
  • PHP 字符串
  • 文本监控 :oninput onchange onpropertychange 的区别
  • 201621123057 《Java程序设计》第7周学习总结
  • 《Netkiller Blockchain 手札》Hyperledger Fabric Java SDK Demo
  • xml文件里 用js语句获取 当前时间
  • 基于 ElasticSearch 搜索服务的简易 API 调用
  • SCCM 2016 使用PXE 部署操作系统(五)
  • Java如何获取系统cpu、内存、硬盘信息
  • squid缓存代理---传统代理和透明代理详解
  • JS对象和Jquery对象的转换
  • 一道面试题引发的“血案”
  • 【159天】尚学堂高琪Java300集视频精华笔记(128)
  • centos安装java运行环境jdk+tomcat
  • Mac转Windows的拯救指南
  • Markdown 语法简单说明
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • 聚类分析——Kmeans
  • 线性表及其算法(java实现)
  • 用quicker-worker.js轻松跑一个大数据遍历
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • #Ubuntu(修改root信息)
  • #WEB前端(HTML属性)
  • #传输# #传输数据判断#
  • #单片机(TB6600驱动42步进电机)
  • $.ajax()方法详解
  • (007)XHTML文档之标题——h1~h6
  • (1)(1.9) MSP (version 4.2)
  • (51单片机)第五章-A/D和D/A工作原理-A/D
  • (C++17) optional的使用
  • (板子)A* astar算法,AcWing第k短路+八数码 带注释
  • (附源码)springboot宠物管理系统 毕业设计 121654
  • (附源码)springboot太原学院贫困生申请管理系统 毕业设计 101517
  • (附源码)ssm高校运动会管理系统 毕业设计 020419
  • (南京观海微电子)——COF介绍
  • (转)用.Net的File控件上传文件的解决方案
  • (转)总结使用Unity 3D优化游戏运行性能的经验
  • ****Linux下Mysql的安装和配置
  • .Net 6.0 处理跨域的方式
  • .NET CORE Aws S3 使用
  • .net core MVC 通过 Filters 过滤器拦截请求及响应内容
  • .net core 依赖注入的基本用发
  • .NET 解决重复提交问题
  • .Net 中的反射(动态创建类型实例) - Part.4(转自http://www.tracefact.net/CLR-and-Framework/Reflection-Part4.aspx)...
  • .NET/C# 中你可以在代码中写多个 Main 函数,然后按需要随时切换
  • .NET委托:一个关于C#的睡前故事
  • .Net小白的大学四年,内含面经
  • :中兴通讯为何成功
  • [ 蓝桥杯Web真题 ]-Markdown 文档解析
  • []sim300 GPRS数据收发程序
  • [2013][note]通过石墨烯调谐用于开关、传感的动态可重构Fano超——
  • [2021]Zookeeper getAcl命令未授权访问漏洞概述与解决