8种常见的Java不规范代码

 更新时间:2017年01月23日 09:39:37   作者:magina_敌法  
本文主要介绍了8种常见的Java不规范代码。具有很好的参考价值,下面跟着小编一起来看下吧

在工作上,我最近对一个现有的Java项目代码进行了清理。完成之后,我发现了一些反复出现的不规范代码。所以,我把它们整理成了一个列表出来分享给我的同行希望能引起注意并改善代码的质量和可维护性。

这个列表不区分顺序,全部来自一些代码质量检查工具,如 CheckStyle, FindBugs 和PMD。

在Eclipse中格式化源代码并管理import语句

Eclipse提供了自动格式化源代码和管理import语句的功能(并移除未使用的语句)。你可以使用下面的快捷键来使用这些功能。

Ctrl + Shift + F – 格式化源代码。

Ctrl + Shift + O – 管理import语句并移除未使用的语句。

除了手动执行这两个功能外,你还可以让Eclipse在保存文件的时候自动格式化源代码并自动管理import语句。要做到这个,在Eclipse中,到 Window -> Preferences -> Java -> Editor -> Save Actions并启用 Perform the selected actions on save,选中 Format source code和 organize imports。

避免在方法中出现多个return语句(退出点):

在你的方法中,确保只有一个 退出点。不要在一个方法中使用多于一个return语句。

如,下面的代码是 不推荐的,因为它有多个退出点(return语句)。

简化if-else方法:

我们写了一些只要一个参数的工具方法,检查一些条件并根据条件返回一个值。如,在上面见到的 isEligible方法www.twitterchina.net

不要为Boolean,Integer或String创建新的实例:

避免创建新的Boolean,Integer,String等实例。使用Boolean.valueOf(true)代替new Boolean(true)。两种写法效果差不多但却可以改善性能。

在代码块周围使用大括号:

永远不要忘记在块类型语句(如:if,for,while)周围使用大括号。这可以减少代码歧义并且避免在你修改代码块的时候产生新的bug。

不推荐

把方法的参数声明为final类型:

总是在所有兼容的地方把把方法的参数声明为final。这样做的话,当你无意中修改了参数的值,编译时会得到警告,并且编译生成的字节码也会得到优化。

推荐

用大写命名public static final类型成员变量:

总是使用大写命名用public static final类型变量。这样可以让你很容易区分常量和本地变量。

不推荐

把多个if语句合并成一个:

下面的代码

别忘了给switch添加default语句:

总是给switch添加一个default语句。

避免 重复 使用同样的字符串,创建一个常量吧:

如果你需要在多个地方使用同一个字符串,那就创建一个字符串常量来使用吧。

下面的代码:

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

相关文章

  • Java中的ReadWriteLock读写锁详解

    Java中的ReadWriteLock读写锁详解

    这篇文章主要介绍了Java中的ReadWriteLock读写锁详解,ReadWriteLock也是一个接口,提供了readLock和writeLock两种锁的操作机制,一个资源可以被多个线程同时读,或者被一个线程写,但是不能同时存在读和写线程,需要的朋友可以参考下
    2023-12-12
  • Java中的String、StringBuilder、StringBuffer三者的区别详解

    Java中的String、StringBuilder、StringBuffer三者的区别详解

    这篇文章主要介绍了Java中的String、StringBuilder、StringBuffer三者的区别详解,就是String,StringBuilder以及StringBuffer这三个类之间有什么区别呢,自己从网上搜索了一些资料,有所了解了之后在这里整理一下,便于大家观看,需要的朋友可以参考下
    2023-12-12
  • IDEA中启动多个SpringBoot服务的实现示例

    IDEA中启动多个SpringBoot服务的实现示例

    本文主要介绍了IDEA中启动多个SpringBoot服务的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-08-08
  • SpringBoot实现登录拦截器超详细教程分享

    SpringBoot实现登录拦截器超详细教程分享

    对于管理系统或其他需要用户登录的系统,登录验证都是必不可少的环节,尤其在 SpringBoot 开发的项目中。本文为大家准备了超详细的SpringBoot实现登录拦截器方法,快收藏一波吧
    2023-02-02
  • Java中双冒号(::)运算操作符用法详解

    Java中双冒号(::)运算操作符用法详解

    这篇文章主要给大家介绍了关于Java中双冒号(::)运算操作符用法的相关资料,双冒号运算操作符是类方法的句柄,lambda表达式的一种简写,这种简写的学名叫eta-conversion或者叫η-conversion,需要的朋友可以参考下
    2023-11-11
  • Java微信公众平台开发(13) 微信JSSDK中Config配置

    Java微信公众平台开发(13) 微信JSSDK中Config配置

    这篇文章主要为大家详细介绍了Java微信公众平台开发第十三步,微信JSSDK中Config配置,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • java Socket实现网页版在线聊天

    java Socket实现网页版在线聊天

    这篇文章主要为大家详细介绍了java Socket实现网页版在线聊天具体代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • SpringMVC日期类型参数传递实现步骤讲解

    SpringMVC日期类型参数传递实现步骤讲解

    这篇文章主要介绍了SpringMVC日期类型参数传递实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2023-02-02
  • SpringBoot单元测试之数据隔离详解

    SpringBoot单元测试之数据隔离详解

    我们在写单元测试时,有一个比较重要的要求是可以重复运行, 那么这样就会有一个比较麻烦的问题:数据污染,所以本文为大家整理了两个数据隔离的方式,希望对大家有所帮助
    2023-08-08
  • 使用SpringCloudApiGateway之支持Cors跨域请求

    使用SpringCloudApiGateway之支持Cors跨域请求

    这篇文章主要介绍了使用SpringCloudApiGateway之支持Cors跨域请求的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07

最新评论