以下是一个Java代码中尾端注释的例子:
if (a == 2) {
return TRUE;/* special case */
} else {
return isPrime(a);/* works only for odd a */
}
5.1.4 行末注释(End-Of-Line Comments)
注释界定符"//",可以注释掉整行或者一行中的一部分 。它一般不用于连续多行的注释文本;然而,它可以用来注释掉连续多行的代码段 。以下是所有三种风格的例子:
if (foo1) {
// Do a double-flip.
...
}
else {
return false;// Explain why here.
}
//if (bar1) {
//
//// Do a triple-flip.
//...
//}
//else {
//return false;
//}
5.2 文档注释(Documentation Comments)
注意:此处描述的注释格式之范例,参见"Java源文件范例"
若想了解更多,参见"How to Write Doc Comments for Javadoc" , 其中包含了有关文档注释标记的信息(@return, @param, @see):
若想了解更多有关文档注释和javadoc的详细资料,参见javadoc的主页:
文档注释描述Java的类、接口、构造器,方法 , 以及字段(field) 。每个文档注释都会被置于注释定界符/**...*/之中,一个注释对应一个类、接口或成员 。该注释应位于声明之前:
/**
* The Example class provides ...
*/
public class Example { ...
注意顶层(top-level)的类和接口是不缩进的,而其成员是缩进的 。描述类和接口的文档注释的第一行(/**)不需缩进;随后的文档注释每行都缩进1格(使星号纵向对齐) 。成员,包括构造函数在内 , 其文档注释的第一行缩进4格,随后每行都缩进5格 。
若你想给出有关类、接口、变量或方法的信息,而这些信息又不适合写在文档中,则可使用实现块注释(见5.1.1)或紧跟在声明后面的单行注释(见5.1.2) 。例如,有关一个类实现的细节,应放入紧跟在类声明后面的实现块注释中,而不是放在文档注释中 。
文档注释不能放在一个方法或构造器的定义块中,因为Java会将位于文档注释之后的第一个声明与其相关联 。
6 声明(Declarations)
6.1 每行声明变量的数量(Number Per Line)
推荐一行一个声明,因为这样以利于写注释 。亦即,
int level;// indentation level
int size;// size of table
要优于,
int level, size;
不要将不同类型变量的声明放在同一行,例如:
int foo,fooarray[];//WRONG!
注意:上面的例子中,在类型和标识符之间放了一个空格,另一种被允许的替代方式是使用制表符:
intlevel;// indentation level
intsize;// size of table
Object currentEntry;// currently selected table entry
6.2 初始化(Initialization)
尽量在声明局部变量的同时初始化 。唯一不这么做的理由是变量的初始值依赖于某些先前发生的计算 。
6.3 布局(Placement)
只在代码块的开始处声明变量 。(一个块是指任何被包含在大括号"{"和"}"中间的代码 。)不要在首次用到该变量时才声明之 。这会把注意力不集中的程序员搞糊涂,同时会妨碍代码在该作用域内的可移植性 。
void myMethod() {
int int1 = 0;// beginning of method block
if (condition) {
int int2 = 0;// beginning of "if" block
...
}
}
该规则的一个例外是for循环的索引变量
for (int i = 0; imaxLoops; i++) { ... }
避免声明的局部变量覆盖上一级声明的变量 。例如 , 不要在内部代码块中声明相同的变量名:
int count;
...
myMethod() {
if (condition) {
int count = 0;// AVOID!
...
}
...
}
6.4 类和接口的声明(Class and Interface Declarations)
当编写类和接口是,应该遵守以下格式规则:
推荐阅读
- python循环功能可通过什么命令实现,python 循环怎么用
- 探险直播中的飘是什么,直播探险是什么游戏
- 怎么拆主机显卡,怎么拆主机显卡教程
- css3滤镜怎么用,css滤镜失效了吗
- plus函数python plus函数如何化简
- sqlserver新建触发器,sql server创建触发器语句
- erp系统推广计划书,erp推广专员
- 瓷砖直播素材图,瓷砖直播策划书
- linux软件命令 linux系统运行软件的命令