Java编程规约

Java编程规约


2005-11-07


1. 规约目的


规约目的是为了卓有成效进行编程工作,统一编程格式,以提高可读性。


2. 规约内容


规约包括:(1)变量、常量、方法、函数、类型、结构、对象、工程名称等命名规约。


(2)变量、常量、方法、类型等的域畴设为最小范围。


(3)函数有返回值的一定要检查确认返回值。


(4)各程序文件所共有变量、常量及结构体等,须在公共声明模块文件中声明。


(5) 程序文件在建立多个共通模块文件后,进行项目工程内使用的公共函数及共通过程的编程。


(6) If、case、for、Do while(Until) 语句等编程格式。


(7)调用函数、方法, 传递参数。


(8)添加注释格式时, 使用的注释符号,在函数或模块的最前面书写注释格式,在难懂的编码前加注释格式等。


3. 规约实例


1.命名規約


<!--[if !supportLists]-->1. <!--[endif]-->1JAVA開発関連


1.1.1方法名


构成方法名称的第一个英文单词的第一个字母小写,之后的单词第一个字母大写。


方法名称前可用以下开头词汇开始。


方法种类


开头词汇






取得变量的值


设定变量的值


追加/新增对象的属性或对象


删除对象的属性或对象


检索对象的属性或对象


更新对象的属性或对象


判断状态或类型,并且返回布尔类型


判断执行的可能性


get


set


add


remove


select


update


is


can


getProperty


setProperty


addMember


removeMember


selectMember


updateMember


isModified


canModify





1.1.2变量命名(Instance变量/Local变量)、Field名


构成名称的一个英文单词的第一个字母小写,之后的单词的第一个字母大写。例:userName


名称的最大字母个数20。


1.1.3常量命名


构成名称的各单词均用大写,并且各单词之间用“_”分割。例:MAX_SIZE


2.编码规约


2.1标识约定


首先要遵守基本的Java编码规约。


1)每行的文字缩紧为一个Tab(4个空格),但是杜俊。


2)代码每行宽度不超过80个字符,超过的场合应该换行。


3)类的定义应按照以下顺序声明、定义。


a)头注释


b)package文


c)import文


d)Class、Interface注释


e)class、interface声明、定义


f)参数定义(每个参数必须有意义注释)


g)构造函数定义


h)方法定义(每个方法必须有意义注释)


4)括号


a)if语句的then和else部分的语句,while语句和for语句中如果只有一行处理语句也要使用{}符号。


if (condition) {


statement;


} else {


statement;


}


b)if、while等关键字对应的”}”要和关键字同列使用,“{”在关键字的行尾使用。


if (condition) {


statement;


}


5)空格


a)在以下情况下,不要使用空格。


・单项演算符和识别符号之间,例:i++


・函数、方法名称和其后的括号之间,例:func(...


b)以下的情况下,使用一个空格。


・赋值演算符的前后,例:a = b


・参数列的逗号的后边,例:"func(a, b, c)"


・逻辑和运算符的前后,例:a + b


·关键字和括号之间,例: if (a>b) {


for (i = 0; i < maxLoops; i++) {


2.2变量声明


·一行只允许声明一个变量。


·数组声明时,’[]’应在数组类型后,之间不能有空格。例:String[] str;


2.3注释


为了使用JDK的javadoc功能,特此使用以下注释。


1)文件的头注释


每个文件必须有头注释。


/*


* Copyright(C) 2004, XXXXXXXX.


*


* 系统名称 : AAAAAAAAAAA


* 子系统名称 : BBBBBBBBBBB


*


* 备注 :


*


*


* 修改历史 :


* 时间 版本号 姓名 内容 B票番号


* 2004/12/12 0.1 张 三 新建


* 2005/02/05 0.1 李 四 Bug修正 PTSK5021


*/


2)Class/Interface注释


在Class和Interface定义前书写此注释


/**


*<pre>


* XXXXXXXXXXXXXXXXXXXXXXXX类


*</pre>


*


* <ul>简要说明</ul>


* <ul>


*详细解释。<br> 


* </ul>


* <br>


* @author 张三


* @version 1.00 2005/11/07 新規作成<br>


*/


3)方法/构造(Constructor)函数注释


方法和构造(Constructor)函数前必须明确注释。


/**


* 方法说明.(结尾必须有半角的句号)


* <ul>


* 方法补充说明


* </ul>


* @param 参数名 参数类型 参数意义注释


* @return 返回值的类型 意义注释


* @exception 例外的类型 意义注释


*/


4)类属性(全局public和内部变量private)的注释


/** 变量说明. */


5)代码修改的注释


·增加


// B票号码 日期(YYYY/MM/DD) 姓名 Begin


·········


// B票号码 日期(YYYY/MM/DD) 姓名 End


·修改


// B票号码 日期(YYYY/MM/DD) 姓名 Begin


// 旧代码


·········


// B票号码 日期(YYYY/MM/DD) 姓名 End


·删除


// B票号码 日期(YYYY/MM/DD) 姓名 Begin


// ·········


// B票号码 日期(YYYY/MM/DD) 姓名 End


6 )其他的注释


’/*~*/’和’//’都可以使用。


//变量XX的注释


String XX = null;


/*ZZ处理相关的说明注释


*aa>bb的情况,XX处理。其他情况,YY处理。


*/


if (aa > bb) {


}


*/


2)Class/Interface注释


在Class和Interface定义前书写此注释


/**


*<pre>


* XXXXXXXXXXXXXXXXXXXXXXXX类


*</pre>


*


* <ul>简要说明</ul>


* <ul>


*详细解释。<br> 


* </ul>


* <br>


* @author 张三


* @version 1.00 2005/11/07 新規作成<br>


*/


3)方法/构造(Constructor)函数注释


方法和构造(Constructor)函数前必须明确注释。


/**


* 方法说明.(结尾必须有半角的句号)


* <ul>


* 方法补充说明


* </ul>


* @param 参数名 参数类型 参数意义注释


* @return 返回值的类型 意义注释


* @exception 例外的类型 意义注释


*/


4)类属性(全局public和内部变量private)的注释


/** 变量说明. */


5)代码修改的注释


·增加


// B票号码 日期(YYYY/MM/DD) 姓名 Begin


·········


// B票号码 日期(YYYY/MM/DD) 姓名 End


·修改


// B票号码 日期(YYYY/MM/DD) 姓名 Begin


// 旧代码


·········


// B票号码 日期(YYYY/MM/DD) 姓名 End


·删除


// B票号码 日期(YYYY/MM/DD) 姓名 Begin


// ·········


// B票号码 日期(YYYY/MM/DD) 姓名 End


6 )其他的注释


’/*~*/’和’//’都可以使用。


//变量XX的注释


String XX = null;


/*ZZ处理相关的说明注释


*aa>bb的情况,XX处理。其他情况,YY处理。


*/


if (aa > bb) {


}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值