java中如何正确的使用注释
创始人
2024-12-21 10:22:27
0次

Java提供了3种类型的注释:

单行注释(C++风格)

在Java中最简单的注释是单行注释。它以两个正斜杠开始并到行尾结束。例如:

// this is a single-line commentx = 1; // a single-line comment after code

多行注释(C风格)

Java同样提供跨越多行的注释类型。这种类型的注释以紧跟着一个星号的正斜杠开始,并以紧跟着一个正斜杠的星号结束。这种类型注释的开始和结束分界符可以在同一行里也可以在不同的行上。例如:

/* This is a c-style comment *//* This is also ac-style comment, spanningmultiple lines */

注意:C风格的注释不可以嵌套使用。比如下面的用法:

/* A comment looks like/* This is a comment */blah blah blah*/

上面的用法会造成语法错误,因为Java编译器只把第一个 */ 当做注释来处理。(编译器认为注释在第一个“*/”就结束了)。

你可以在多行注释里嵌入单行注释:

/* This is a single-line comment:// a single-line comment*/

以及在单行注释里使用多行注释:

// /* this is// a multi-line// comment */

文档注释

文档注释是一种与多行注释很类似的特殊注释,它可以用来为你的源代码产生外部文档。这种注释以紧跟着两个星号的正斜杠开始,并以紧跟着一个正斜杠的星号结束。例如:

/** This is a documentation comment *//** This is also adocumentation comment */

这里有一些关于文档注释的重要事情要注意:

javadoc文档生成器会把文档注释里的所有文本都添加到一个HTML段落里。这意味着,在文档注释里的任意文本都会被格式化为一个段落;空格和换行符会被忽略。如果你想要特殊的格式,你必须要在文档注释里使用HTML标签。

如果文档注释以超过两个的星号开始,那么javadoc就认为这些星号是用来在源码里创建一个“框”框住注释的,并忽略多余的星号。例如:

/**********************************This is the start of a method**********************************/

该注释仅保留“This is the start of a method”文本。

javadoc会忽略文档注释里处于行首的星号。例如:

/**************************************** This is a doc comment* on multiple lines that I want to stand* out in source code, looking "neat"***************************************/

该注释仅保留“This is a doc comment on multiple lines that I want to stand out in source code, looking “neat””文本。

常见的用法如下:

/******************************************...******************************************/

该用法是为了突出注释。要注意的是,这属于文档注释(即使这不是你所想的那样),并会在产生的文档里出现注释的内容。

什么时候使用文档注释

你(至少)应该在任意的公有类、接口、方法和源码里的类或实例变量前面使用文档注释。这样可以让javadoc针对代码产生简单的文档,它列出了公共实体 和每个实体的简要说明。你同样可以在非公共方法前面使用文档注释,不过需要使用一个javadoc选项来它们产生文档。相比于公有实体,在非公有实体上使 用文档注释显得没那么重要(它的接口不会暴露出来……)。但如果你要注释代码,你同样可以使用文档注释。

什么时候使用单行注释

任意时候都可以!

关于注释,我有一个简单的建议,在你想写常规注释(不是用来描述类、接口、方法或者变量的文档注释)的时候可以使用单行注释。

为什么?因为你可以轻易地使用多行注释去“注释掉”你的代码段(“注释掉代码”意味着把一段代码的词法状态变为一段注释,让编译器忽略这段代码)。举个例子:

x = 1; /* set x to 1 */y = 2; /* set y to 2 */f(x, y); /* call f with x and y */

要把上面三行代码注释掉,你可能需要在每一行的前面使用单行注释:

// x = 1; /* set x to 1 */// y = 2; /* set y to 2 */// f(x, y); /* call f with x and y */

或者在还没有加注释的地方加上多行注释:

/* x = 1; */ /* set x to 1 *//* y = 2; */ /* set y to 2 *//* f(x, y);*/ /* call f with x and y */

或者分解或删除已存在的注释的“结束注释”分解符:

/*x = 1; /* set x to 1 * /y = 2; /* set y to 2 * /f(x, y); /* call f with x and y * /*/

这些用法都糟糕透了。如果原始代码使用下面的注释,那么事情就好办多了:

x = 1; // set x to 1y = 2; // set y to 2f(x, y); // call f with x and y

如此一来,只需使用多行注释把代码围起来你就可以轻松把它注释掉:

/*x = 1; // set x to 1y = 2; // set y to 2f(x, y); // call f with x and y*/

在你需要使用注释的时候尽量使用单行注释,不要写无用的注释。

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...