赛迪网 > IT技术 Java > 技术动态
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

基础教程:JAVA代码编写程序的基本规范

发布时间:2007.05.23 05:26     来源:赛迪网技术社区    作者:dxaw

1.Java命名规范

1.1 Package 的命名

Package 的名字应该都是由一个小写单词组成,例如:net.ebseries.modules。

1.2 Class 的命名

Class 的名字必须由大写字母开头而其他字母都小写的单词组成,例如:DataFile或InfoParser。

1.3 Class 变量的命名

变量的名字可大小写混用,但首字符应小写。词由大写字母分隔,限制用下划线,限制使用美元符号($),因为这个字符对内部类有特殊的含义。如: inputFileSize。

类中的属性不能定义为public变量直接存取,而是定义成protect变量来防止继承类使用他们并编写get/set方法。

1.4 Class 属性(成员变量)使用

Class 属性(成员变量)使用一定要加前缀this或super标识对应的成员变量,以增加程序的可读性。

1.5 Static Final 变量的命名

Static Final 变量的名字应该都大写,并且指出完整含义,例如:final MAXUPLOADFILESIZE=1024。

1.6 方法的命名

方法名应该是动词,大小写可混用,但首字母应小写。在每个方法名内,大写字母将词分隔并限制使用下划线。参数的名字必须和变量的命名规范一致,问题参数名是否采用以下划线开始作为统一标识,如setCounter(int _size),以标识成员变量size和传入参数_size区别。使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字:

setCounter(int size){

this.size = size;

}

1.7 数组的命名

数组应该总是用下面的方式来命名:byte[] buffer;而不是:byte buffer[];

2.代码格式

2.1 代码样式

代码应该用 unix 的格式,而不是 windows 的(比如:回车变成回车+换行)

2.2 文档化

必须用 javadoc 来为类生成文档。不仅因为它是标准,这也是被各种 java 编译器都认可的方法。

2.3 缩进

缩进应该是每行4个空格. 不要在源文件中保存Tab字符. 在使用不同的源代码管理工具时Tab字符将因为用户设置的不同而扩展为不同的宽度.

2.4 大括号{}

{} 中的语句应该单独作为一行. 例如, 下面的第1行是错误的, 第2行是正确的:

if (i>0) { i ++ }; // 错误, { 和 } 在同一行

if (i>0) {

i ++

}; // 正确, { 单独作为一行

2.5 括号()

左括号和后一个字符之间不应该出现空格, 同样, 右括号和前一个字符之间也不应该出现空格. 下面的例子说明括号和空格的错误及正确使用:

CallProc( AParameter ); // 错误

CallProc(AParameter); // 正确

不要在语句中使用无意义的括号. 括号只应该为达到某种目的而出现在源代码中。下面的例子说明错误和正确的用法:

if ((I) = 42) { // 错误 - 括号毫无意义

if (I == 42) or (J == 42) then // 正确 - 的确需要括号

2.6 注释

// 注释一行  

/* ...... */ 注释若干行

文档注释:   

/** ...... */ 注释若干行,并写入 javadoc 文档

在每个源文件的头部要有必要的注释信息,包括:文件名;版本号;作者;生成日期;模块功能描述(如功能、主要算法、内部各部分之间的关系、该文件与其它文件关系等。

在每个函数或过程的前面要有必要的注释信息,包括:函数或过程名称;功能描述;输入、输出及返回值说明;调用关系及被调用关系说明等。

3. 方法

l 方法的规模尽量限制在200行以内。

l 一个方法最好仅完成一件功能。

l 为简单功能编写方法。

l 方法的功能应该是可以预测的,也就是只要输入数据相同就应产生同样的输出。

l 尽量不要编写依赖于其他方法内部实现的方法。

l 避免设计多参数方法,不使用的参数从接口中去掉。

l 用注释详细说明每个参数的作用、取值范围及参数间的关系。

l 检查方法所有参数输入的有效性。

l 检查方法所有非参数输入的有效性,如数据文件、公共变量等。

l 方法名应准确描述方法的功能。

l 避免使用无意义或含义不清的动词为方法命名

l 方法的返回值要清楚、明了,让使用者不容易忽视错误情况。

l 明确方法功能,精确(而不是近似)地实现方法设计。

l 减少方法本身或方法间的递归调用。

l 编写可重入方法时,若使用全局变量,则应通过关中断、信号量(即P、V操作)等手段对其加以保护。

4. jsp规范

4.1 jsp目录命名规范

参照Package命名规则,用小写单个单词作为目录名

4.2 jsp文件名规范

参照class命名规则,采用首子母大写,多单词间采用大写字母分割

4.3 jsp传递参数命名规则

参照class变量命名规划

4.4 文件命名其它常见规范

l jsp主页面(游览功能) XxxxIndex.jsp (一般记录的删除在此页面做连接)

l jsp添加功能页面 XxxxAdd.jsp,相关的处理页面XxxxAddAction.jsp

l jsp修改功能页面 XxxxModify.jsp, 相关的处理页面XxxxModifyAction.jsp

l jsp删除功能页面 XxxxDel.jsp, 相关的处理页面XxxxDelAction.jsp

(T007)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 详细解析 Java中的抽象类和接口的区别 (05-22) · Java单元测试工具的最新版本AgitarOne (05-21)
· 如何用JavaBeans在应用程序中创建组件 (05-21) · 在JSP中九个隐含对象的详细解析 (05-21)
· 在JSP中使用Session制作简单的登录模块 (05-21) · Java中的两种集合容器类List和Set分析 (05-21)
· 仔细触摸Java编程中的“文档”和“包” (05-21) · 对Spring框架中接口注入理解的实例分析 (05-18)
· JAVA基础篇 初学者入门必备的学习资料 (05-18) · J2EE基础篇 对Log4J使用方法的简单讲解 (05-17)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 黑客病毒现身互联网 个人数据信息受威胁
· ERP实施过程中项目管理失控的几种表现
· 首届赢在软件创富大赛 SOA技术+应用
· 个人理财合规系统方案 方正电子公文系统
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统