JAVA代码编程规范 e1Q
类的成员变量定义 rHiBW!
F/
o }5H
大部分类的成员变量应该定义为protected来防止继承类使用他们。 ?[?;%Y
;vG%[f`K
数组标识 7y4jk
wU(p_G3
要用"int[]packets",而不是"intpackets[]",后一种永远也不要用。 l=UXikx
X4eoE
成员变量与函数内局部变量用this nD.K*# u
fU<_bg
publicvoidsetPackets(int[]packets){this.packets=packets;}//一般函数 8'qq!WR~
/Bq4! n+
CounterSet(intsize){this.size=size;}//构造函数 y**YFQ*sc
7bk`u'0%
可读性 %/oeV;D
Cz|F%>y#
避免使用不易理解的数字,用有意义的标识来替代。不要使用难懂的技巧性很高的语句。 IFsh"i
;F|8#! (
源程序中关系较为紧密的代码应尽可能相邻。 ]w0_!Z&
[2{2w68D!
可移植性 p~WX\;
"^Vnnb:Z*o
BorlandJbulider不喜欢synchronized这个关键字,如果你的断点设在这些关键字的作用域内的话,调试的时候你会发现的断点会到处乱跳,让你不知所措。除非必须,尽量不要使用。 ~jJF&*)
/%1-tGh
换行 *b7evU *1
% oJH 6F
如果要换行的话,尽量用println来代替在字符串中使用"\n"。 ]TVc 'G;
{X5G
你不要这样:System.out.print("Hello,world!\n"); ra;:
`y>BbJqy
要这样:System.out.println("Hello,world!"); ~6=aoF5"3?
'>cZ7:
或者构造一个带换行符的字符串,至少要象这样: O1Ynl`}
}Gva=N:
Stringnewline=System.getProperty("line.separator"); +#L'gc
\
[bJ@f*."
System.out.print("Helloworld"+newline); mWF\h>]|.
cHC1l
PrintStream GXi)3I%
6zIK%<
PrintStream已经被不赞成(deprecated)使用,用PrintWrite来代替她。 W[f%m0
)>tT""yEl
排版规范 !Qq~lAJO;
Lb#PiTJI
关键词和操作符之间加适当的空格。 4k!>JQor
|?v .5|1
相对独立的程序块与块之间加空行。 T9FGuit9
,]tEh:QC
较长的语句、表达式等要分成多行书写。 ;o158H$gz;
[>LO'}%
划分出的新行要进行适应的缩进,使排版整齐,语句可读。 iUbcvF3aP
iD.p KG
长表达式要在低优先级操作符处划分新行,操作符放在新行之首。 Dtox/ ,"
xFcW%m>9C
循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分。 ;OC{B}.vH
}{}?mQ
若函数或过程中的参数较长,则要进行适当的划分。 87F]a3
e=+q*]>
不允许把多个短语句写在一行中,即一行只写一条语句。 )Y`ybADd3
1)5/a5
函数或过程的开始、结构的定义及循环、判断等语句中的代码都要采用缩进风格。 ]F"P3':
J3XG?'
}
编写程序块时‘{’和‘}’应各独占一行并且位于同一列,同时与引用它们的语句左对齐。在函数体的开始、类的定义、结构的定义、枚举的定义以及if、for、do、while、switch、case语句中的程序都要采用如上的缩进方式。 :)y3&