JAVA里有2中注释风格。

一种以 “/*” 开始以 “*/” 结尾,另一种是以 “//” 起头的。

被注释的内容不会被java虚拟机编译,所以这就是为什么用反编译编译源代码没有注释的原因。

举个栗子

package test;

public class JavaDoc {
/*这是单行注释*/ /**
* 这是多行注释
* 可以写很多行
*/ //这是单行注释,按2次斜杠就可以了 //这种注释可以只有开头
//所有也可以写很多行 public static void main(String[] args) { }
}

反编译JavaDoc.class后的内容

package test;

public class JavaDoc {
public JavaDoc() {
} public static void main(String[] args) {
}
}

扩展

如果你使用 lntelliJ IDEA 进行编码的话,你还可以使用 “//region //endregion“来自已注释代码块,方便阅读源代码哦。可以选中要注释的代码块,然后快捷键 Ctrl+Alt+T ,选择region 即可。

//region 这是把其中的代码折叠起来
public static void main(String[] args) { }
//endregion

折叠后

这是把其中的代码折叠起来

java文档注释

java文档注释是为了输出代码注释文档,让代码和文档分离,便于查看文档。比如java API 文档,就是java底层开发者的文档注释,每次修改后只要输入文档即可,不用花费时间人力去维护开发的api。

在java文档注释javadoc中可使用嵌入html和“文档标签”,通过javadoc输入的注释文档是一个html文档,所以我们可以在文档注释使用html标签。

如果你想在嵌入的html代码中写行内样式,这是可以滴,为什么?因为我试过了。你可以自己美化你的注释哦,但是这回让你的源注释包含太多样式,不利于阅读,最好还是不要这样搞。

在文档注释中使用嵌入html代码和写html页面一样,大家可自行学习html即可。

在文档“文档标签”的话,需要使用指定的标签和写法,所有的文档标签都是用@ 符号声明,后面记得加空格。

  1. @see 引用其类,@see class-name 转化为html标签的 a 标签,链接到其他文档。
  2. @author 声明作者。
  3. @throws 声明方法可能会跑出的异常,调用者要进行处理。
  4. @param 参数说明,@param name desc。以上可文档标签都可写多个,但多个必须是连续的。
  5. @return 表示返回值。

举个栗子

package test;
public class JavaDoc {
/**
* <p>方法描述:变量自动加一.</p>
* <p>创建时间:2019-03-31 23:40:54</p>
* <p>创建作者:李兴武</p>
*
* @param i 进行自动加一的数
* @return 返回加一后的结果
* @throws RuntimeException 被操作数为0,会抛出异常
* @author "lixingwu"
* @see IfElse
*/
public Integer add(int i) throws RuntimeException {
if (i == 0) {
throw new RuntimeException("被操作数不能为0");
}
i++;
return i;
}
}

输出的JavaDoc.html

扩展

如果您使用的lntelliJ IDEA 进行编码的话,可以使用 Tools -> Generate JavaDoc 来生成文档。

注释规约

根据阿里巴巴java开发手册说明:

  1. 【强制】类、类属性、类方法的注释必须是用 /**内容*/ 格式,不得使用//xxx方式;
  2. 【强制】所有的抽象类必须有javadoc注释,详细说明其作用;
  3. 【强制】所有的javadoc必须有 添加时间创建作者
  4. 【强制】方法内的单行注释,必须另起一行,使用 // 注释,多行注释使用 /**/
  5. 【强制】所有的枚举类型必须有注释,说明每项数据的作用;

java基础之 java注释的更多相关文章

  1. Java基础语法(6)-注释

    title: Java基础语法(6)-注释 blog: CSDN data: Java学习路线及视频 用于注解说明解释程序的文字就是注释. 提高了代码的阅读性:调试程序的重要方法. 注释是一个程序员必 ...

  2. 黑马程序员:Java基础总结----java注解

    黑马程序员:Java基础总结 java注解   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! java注解 lang包中的基本注解 @SuppressWarnings ...

  3. java基础-学java util类库总结

    JAVA基础 Util包介绍 学Java基础的工具类库java.util包.在这个包中,Java提供了一些实用的方法和数据结构.本章介绍Java的实用工具类库java.util包.在这个包中,Java ...

  4. Java基础:Java的四种引用

    在Java基础:java虚拟机(JVM)中,我们提到了Java的四种引用.包括:强引用,软引用,弱引用,虚引用.这篇博客将详细的讲解一下这四种引用. 1. 强引用 2. 软引用 3. 弱引用 4. 虚 ...

  5. java基础(二)-----java的三大特性之继承

    在<Think in java>中有这样一句话:复用代码是Java众多引人注目的功能之一.但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情.在这句 ...

  6. Java基础-使用JAVA代码剖析MD5算法实现过程

    Java基础-使用JAVA代码剖析MD5算法实现过程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.

  7. Java基础技术-Java其他主题【面试】

    Java基础技术-Java其他主题[面试] Java基础技术IO与队列 Java BIO.NIO.AIO Java 中 BIO.NIO.AIO 的区别是什么? 含义不同: BIO(Blocking I ...

  8. Java基础(Java概述、环境变量、注释、关键字、标识符、常量)

    第1天 Java基础语法 今日内容介绍 u Java开发环境搭建 u HelloWorld案例 u 注释.关键字.标识符 u 数据(数据类型.常量) 第1章 Java开发环境搭建 1.1 Java概述 ...

  9. [java基础]文档注释

    转载自:http://blog.163.com/hui_san/blog/static/5710286720104191100389/ 前言 Java 的语法与 C++ 及为相似,那么,你知道 Jav ...

  10. 黑马程序员——【Java基础】——Java概述

    ---------- android培训.java培训.期待与您交流! ---------- 一.Java语言概述及三大技术架构 1.Java语言概述 Java是SUN公司于1995年推出的一种面向I ...

随机推荐

  1. cf912D

    题意简述:往n*m的网格中放k条鱼,一个网格最多放一条鱼,然后用一个r*r的网随机去捞鱼,问怎么怎么放鱼能使得捞鱼的期望最大,输出这个期望 题解:肯定优先往中间放,这里k不大,因此有别的简单方法,否则 ...

  2. 《C++Primer》第五版习题答案--第六章【学习笔记】

    <C++Primer>第五版习题答案--第六章[学习笔记] ps:答案是个人在学习过程中书写,可能存在错漏之处,仅作参考. 作者:cosefy Date: 2020/1/16 第六章:函数 ...

  3. 页面上icon较多,又不想使用臃肿的结构怎么办?

    [先看效果图] 例如这种排版,常规有两种情况 1.把[“ & ”]+ 白色背景切一起 2.写结构的时候复杂,例如:div>img*2 +文字标签 读到这里,可能有人说,第一种情况为什么两 ...

  4. 【剑指Offer】63、二叉搜索树的第k个结点

    题目描述 给定一棵二叉搜索树,请找出其中的第k小的结点.例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4. 题解一:DFS 借助栈实现 // 中序非递归 public ...

  5. 吴裕雄--天生自然HADOOP操作实验学习笔记:分布式资源调度系统yarn的安装

    实验目的 复习配置hadoop初始化环境 复习配置hdfs的配置文件 学会配置hadoop的配置文件 了解yarn的原理 实验原理 1.yarn是什么 前面安装好了hdfs文件系统,我们可以根据需求进 ...

  6. python 字典 day6

    字典 :键与值用:分开   项与项用,分开 特点:key-value结构‘ key为不可变数据类型,key必须唯一 可以任意存放多个value值 ,可以不唯一,可修改 无序 查询速度极快  且不受di ...

  7. VMware、Linux(CentOS 7)安装,供参考。

    前端开发,学习Linux,记录安装中的一些问题,比如在安装最小版后,如何由命令行转为图形界面等. -------------笔记中截图参考其他资料. 下载文件 VMware 12: 链接:https: ...

  8. map/reduce+lambda让程序简单化

    map()函数 map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回. 也就是  map(f,[x,x,x, ...

  9. SpringMVC中的参数绑定

    SpringMVC中的参数绑定 参数绑定的定义 所谓参数绑定,简单来说就是客户端发送请求,而请求中包含一些数据,那么这些数据怎么到达 Controller.从客户端请求key/value数据(比如ge ...

  10. 设置 myeclipse 编码格式

    参考网址:https://jingyan.baidu.com/article/77b8dc7fc6e1626174eab6bb.html