一、Eclipse编译器提供源代码格式输入
Eclipse提供自动源码格式选项,并且组织输入(删除未使用的代码)。你可以使用下面的这些快捷键进行操作。
Ctrl + Shift + F--源代码格式
Ctrl + Shift + O--组织输入并删除未使用的代码
代替手动调用这两个函数,只需根据Eclipse自动格式和自动组织选项,可以随时保存文件。
操作步骤,在Eclipse中进入Window -> Preferences -> Java -> Editor -> Save Actions,然后以选定的方式保存,后检查Format source code + Organize imports.
二、避免多个返回(退出点)
依照你的方法,确保只有一个退出点。不要在同一个地方或多个地方使用返回。比如,下面的代码,NOT RECOMMENDED(不建议),这是因为有多个退出点(返回语句)。
1.private boolean isEligible(int age){
2. if(age > 18){
3. return true;
4. }else{
5. return false;
6. }
7.}
下面的代码有所提升,这是更高版本的。
1.private boolean isEligible(int age){
2. boolean result;
3. if(age > 18){
4. result = true;
5. }else{
6. result = false;
7. }
8. return result;
9.}
三、简化if-else
我写了几个实用的方法作为参考,检查语句条件并且基于该条件返回值。比如,考虑到isEligible方法,正如你之前所看到的:
1.private boolean isEligible(int age){
2. boolean result;
3. if(age > 18){
4. result = true;
5. }else{
6. result = false;
7. }
8. return result;
9.}
整个方法以一个单一的return语句重新编写:
1.private boolean isEligible(int age){
2.3.return age > 18;
4.5.}
四、不要给Boolean, Integer或者String创建新的实例
避免给Boolean,Integer,String创建新的实例。比如,使用new Boolean(true),Boolean,valueOf(true)。修改后的语句与之前的效果基本相同,除了在性能上有所提升。
五、使用大括号模块语句
永远别忘了使用大括号模块语句比如if、for、while.这样做的好处是当你在修改模块级语句时减少了模糊代码并且避免引进bug的机会。
不建议:
1.if(age > 18)
2. result = true;
3.else
4. result = false;
建议:
1.if(age > 18){
2. result = true;
3.}else{
4. result = false;
5.}
六、以final类型标记方法参数,任何时候都适用
请记住,以final类型标记方法参数,任何时候都适用。这样做的好处在于当你不小心修改参数值时,编译器会给你警告,同时它还能以更好的方式优化编译器代码字节。
建议:
private boolean isEligible(final int age){ … }
七、在UPPERCASE中命名public static final字段
在UPPERCASE中命名public static final字段(通常也被称之为常量)。这个可以让你轻松区分常量字段和局部变量之间的不同。
不建议:
public static final String testAccountNo = "12345678";
建议:
public static final String TEST_ACCOUNT_NO = "12345678";,
八、组合成单一的if语句
在尽可能多的情况下,把多个if语句组合成单一的if语句,比如下面的代码:
1.if(age > 18){
2. if( voted == false){
3. // eligible to vote.
4. }
5.}
合并成单一的if语句:
1.if(age > 18 && !voted){
2. // eligible to vote
3.}
九、Switch应该有default
始终给Switch语句添加default.
十、使用常量来避免重复定义相同的字符串值
如果你在多个地方必须使用字符串,那么使用常量来避免重复定义拥有相同值的字符串。
比如,看下面的代码:
1.private void someMethod(){
2. logger.log("My Application" + e);
3. …
4. …
5. logger.log("My Application" + f);
6.}
string literal"我的应用"可以作为常量并且能在代码中使用。
1.public static final String MY_APP = "My Application";
2.
3.private void someMethod(){
4. logger.log(MY_APP + e);
5. …
6. …
7. logger.log(MY_APP + f);
8.}
本文标题:Java编程开发中常见的违规编码,责任编辑:宏鹏,来源:武汉北大青鸟鲁广校区栏目,于2013-03-13 10:13:22发布于北大青鸟鲁广校区。Eclipse提供自动源码格式选项,并且组织输入(删除未使用的代码)。你可以使用下面的这些快捷键进行操作。
预约将免费领取7天课程体验卡
只为您方便就学
专业老师24小时1对1学习指导
定制专属于你的专属学习方案
微信号:17740513250
微信号:17740513250