第一范文网 - 专业文章范例文档资料分享平台

Java编程规范

来源:用户分享 时间:2025/5/16 2:19:41 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

华软软件学院 Java编码规范

3.8 if else 语句(*)

多条件连续判断语句应按以下格式书写: if ( …) { …

} else if (…) { … } else { … }

应注意if 语句总应使用括号,要避免以下容易出错的写法: if (condition) // 避免。此处略去了{}!

statement;

if (condition) statement;

3.9 括号

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

不要在语句中使用无意义的括号。括号只应该为达到某种目的(如语法要求或增加程序 可读性)而出现在源代码中。下面的例子说明错误和正确的用法: if ((I) == 42) { // 错误,括号毫无意义

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

3.10 语句

每行只能包括一句代码。如: argv++; // 正确 argc--; // 正确 argv++; argc--; // 避免!

3.11 使用空格

空格应依如下规则使用:

1.关键字与括号之间应加一空格(*),如:(while 与小括号间有空格)

华软软件学院 Java编码规范

while (true) { ... }

注意在方法名和左括号之间不应加空格,这样有助于区分关键字和方法调用。 2.参数列表中逗号后面应加一个空格(*)。

3.操作数与操作符之间应该加一空格,除了“.”操作符和一元操作符,即“++”和“—”。 (*)例: a += c + d; a = (a + b) / (c * d); while (d++ = s++) { n++; }

printSize(\

4.for 语句中的表达式应以空格分开(*): for (expr1; expr2; expr3)

5.强制类型转换应加空格,如: myMethod((byte) aNum, (Object) x); myMethod((int) (cp + 5), ((int) (i + 3)) + 1);

四、程序编写规范

4.1 使用方法来访问实例变量和类变量(*)

如果没有很好的理由,一般不应将实例变量或类变量设为public ,将变量设为public 的典型应用是此类代表一个“数据结构”,而不包含任何方法。

4.2 引用类变量和类方法(*)

避免使用对象引用来访问类(static)变量或类方法,而应使用类名来访问。如: classMethod(); //OK AClass.classMethod(); //OK anObject.classMethod(); // 避免!

4.3 常量(*)

数字常量不应直接在编码中出现,除非是for 循环中用于计数的–1,0,或1。 字符串常量尽量不直接在编码中出现。

华软软件学院 Java编码规范

4.4 ?前的逻辑运算表达式

?前的逻辑运算表达式应以括号括起,如: (x >= 0) ? x : -x;

4.5 特殊注释

注释用XXX 表示当前是伪码,但可以工作,用FIXME 标记有问题的部分。(Use XXX in a comment to flag something that is bogus but works. Use FIXME to flag something that is bogus and broken.)

4.6 例外

申明的错误应该抛出一个RuntimeException 或者派生的例外。

顶层的main()函数应该截获所有的例外,并且打印(或者记录在日志中)在屏幕上。

五、编程实践问题

5.1 exit()

exit 除了在main 中可以被调用外,其他的地方不应该调用。因为这样做不给任何代 码机会来截获退出。一个类似后台服务的程序不应该因为某一个库模块决定了要退出就退 出。

5.2 垃圾收集

JAVA使用成熟的后台垃圾收集技术来代替引用计数。但是这样会导致一个问题:你必须在使用完对象的实例以后进行清场工作。 例如:

FileOutputStream fos = new FileOutputStream(projectFile) ; project.save(fos, \ fos.close() ; fos = null ;

记住!必须在使用完对象的实例以后将其关闭并且将其设置为null。

5.3 final 类

绝对不要因为性能的原因将类定义为final 的(除非程序的框架要求)

如果一个类还没有准备好被继承,最好在类文档中注明,而不要将她定义为final 的。 这是因为没有人可以保证会不会由于什么原因需要继承它。

5.4 性能

在写代码的时候,从头至尾都应该考虑性能问题。这不是说时间都应该浪费在优化代码 上,而是我们时刻应该提醒自己要注意代码的效率。比如:如果没有时间来实现一个高效的 算法,那么我们应该在文档中记录下来,以便在以后有空的时候再来实现她。

不是所有的人都同意在写代码的时候应该优化性能这个观点,他们认为性能优化的问题

华软软件学院 Java编码规范

应该在项目的后期再去考虑,也就是在程序的轮廓已经实现了以后。应注意: ·不必要的对象构造

·不要在循环中构造和释放对象

5.5 使用StringBuffer 对象

在处理String 的时候要尽量使用StringBuffer 类,StringBuffer 类是构成String 类的 基础。String 类将StringBuffer 类封装了起来,(以花费更多时间为代价)为开发人员提供 了一个安全的接口。当我们在构造字符串的时候,我们应该用StringBuffer 来实现大部分 的工作,当工作完成后将StringBuffer 对象再转换为需要的String 对象。比如:如果有一 个字符串必须不断地在其后添加许多字符来完成构造,那么我们应该使用StringBuffer 对 象和她的append() 方法。如果我们用String 对象代替StringBuffer 对象的话,会花费许 多不必要的创建和释放对象的CPU 时间。

5.6 换行

如果需要换行的话,尽量用println 来代替在字符串中使用\。 不要这样:

System.out.print(\要这样:

System.out.println(\

或者你构造一个带换行符的字符串,至少要象这样: String newline = System.getProperty(\System.out.println(\

搜索更多关于: Java编程规范 的文档
Java编程规范.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c9monx18m0x8xzko047ms_3.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top