java编码代码规范 java编码规范和格式的要求( 八 )


6 构造器
7 方法 这些方法应该按功能,而非作用域或访问权限,分组 。例如,一个私有的类方法可以置于两个公有的实例方法之间 。其目的是为了更便于阅读和理解代码 。
4 缩进排版(Indentation)
4个空格常被作为缩进排版的一个单位 。缩进的确切解释并未详细指定(空格 vs. 制表符) 。一个制表符等于8个空格(而非4个) 。
4.1 行长度(Line Length)
尽量避免一行的长度超过80个字符,因为很多终端和工具不能很好处理之 。
注意:用于文档中的例子应该使用更短的行长,长度一般不超过70个字符 。
4.2 换行(Wrapping Lines)
当一个表达式无法容纳在一行内时,可以依据如下一般规则断开之:
- 在一个逗号后面断开
- 在一个操作符前面断开
- 宁可选择较高级别(higher-level)的断开,而非较低级别(lower-level)的断开
- 新的一行应该与上一行同一级别表达式的开头处对齐
- 如果以上规则导致你的代码混乱或者使你的代码都堆挤在右边,那就代之以缩进8个空格 。
以下是断开方法调用的一些例子:
someMethod(longExpression1, longExpression2, longExpression3,
longExpression4, longExpression5);
var = someMethod1(longExpression1,
someMethod2(longExpression2,
longExpression3));
以下是两个断开算术表达式的例子 。前者更好,因为断开处位于括号表达式的外边,这是个较高级别的断开 。
longName1 = longName2 * (longName3 + longName4 - longName5)
+ 4 * longname6; //PREFFER
longName1 = longName2 * (longName3 + longName4
- longName5) + 4 * longname6; //AVOID
以下是两个缩进方法声明的例子 。前者是常规情形 。后者若使用常规的缩进方式将会使第二行和第三行移得很靠右,所以代之以缩进8个空格
//CONVENTIONAL INDENTATION
someMethod(int anArg, Object anotherArg, String yetAnotherArg,
Object andStillAnother) {
...
}
//INDENT 8 SPACES TO AVOID VERY DEEP INDENTS
private static synchronized horkingLongMethodName(int anArg,
Object anotherArg, String yetAnotherArg,
Object andStillAnother) {
...
}
if语句的换行通常使用8个空格的规则,因为常规缩进(4个空格)会使语句体看起来比较费劲 。比如:
//DON’T USE THIS INDENTATION
if ((condition1condition2)
|| (condition3condition4)
||!(condition5condition6)) { //BAD WRAPS
doSomethingAboutIt();//MAKE THIS LINE EASY TO MISS
}
//USE THIS INDENTATION INSTEAD
if ((condition1condition2)
|| (condition3condition4)
||!(condition5condition6)) {
doSomethingAboutIt();
}
//OR USE THIS
if ((condition1condition2) || (condition3condition4)
||!(condition5condition6)) {
doSomethingAboutIt();
}
这里有三种可行的方法用于处理三元运算表达式:
alpha = (aLongBooleanExpression) ? beta : gamma;
alpha = (aLongBooleanExpression) ? beta
: gamma;
alpha = (aLongBooleanExpression)
? beta
: gamma;
5 注释(Comments)
Java程序有两类注释:实现注释(implementation comments)和文档注释(document comments) 。实现注释是那些在C++中见过的,使用/*...*/和//界定的注释 。文档注释(被称为"doc comments")是Java独有的,并由/**...*/界定 。文档注释可以通过javadoc工具转换成HTML文件 。
实现注释用以注释代码或者实现细节 。文档注释从实现自由(implementation-free)的角度描述代码的规范 。它可以被那些手头没有源码的开发人员读懂 。
注释应被用来给出代码的总括,并提供代码自身没有提供的附加信息 。注释应该仅包含与阅读和理解程序有关的信息 。例如,相应的包如何被建立或位于哪个目录下之类的信息不应包括在注释中 。

推荐阅读