`

Java中一些常见的违规编码

    博客分类:
  • java
 
阅读更多

  一、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.}

原文出自【比特网】,转载请保留原文链接:http://soft.chinabyte.com/database/483/12444983.shtml

分享到:
评论

相关推荐

    Java中十个常见的违规编码

    以下是对Java中十个常见违规编码的详细说明,这些编码习惯应尽量避免: 1. **自动格式化和组织输入**: Eclipse 提供了源代码格式化和组织输入的功能,如 `Ctrl + Shift + F` 用于格式化代码,`Ctrl + Shift + O` ...

    JAVA中十个常见的违规编码

    ### JAVA中十个常见的违规编码 #### 一、利用Eclipse自动化工具提高代码整洁度 在开发过程中,保持代码的整洁是非常重要的。Eclipse作为一个广泛使用的IDE(集成开发环境),提供了非常便捷的功能来帮助开发者实现...

    java做敏感词监测

    在Java编程语言中,敏感词监测是一项重要的功能,特别是在处理用户输入、社交媒体分析、内容过滤等场景中。这个压缩包文件可能包含了一套后端实现敏感词检测的解决方案。下面我们将详细探讨Java如何进行敏感词监测,...

    Java 实现文章汉字关键词(违禁词)识别

    5. **关键词过滤算法**:一种常见的方法是Boyer-Moore算法或KMP算法,它们在字符串匹配时可以跳过一些不必要的比较,提高匹配速度。对于中文字符,需要对Unicode编码进行处理。 实现步骤大致如下: 1. **构建违禁...

    Java实现发送短信的架包

    在Java后端开发中,发送短信是一项常见的功能,主要用于用户验证、通知服务或者营销活动等。为了实现这个功能,开发者通常会使用特定的第三方库或框架,这些库被称为“短信包”或者“短信SDK”。本篇文章将详细讲解...

    java校园论坛的设计与实现

    总的来说,"Java校园论坛的设计与实现"涵盖了软件工程中的多个重要方面,包括需求分析、系统设计、编码实现、测试调试以及后期维护。这个项目对于学习Java编程、Web开发以及团队协作有着很好的实践价值。

    基于java的宿舍管理系统源代码

    `cloudfunctions`可能涉及到云函数的实现,这是现代Web应用中常见的服务端计算组件,可以处理异步任务或者扩展应用功能。`miniprogram`则可能是指微信小程序或类似平台的小程序代码,用于提供移动端的用户体验。 在...

    基于数据库和Java的宿舍管理系统.pdf

    标签中提到的“Java程序开发”、“软件开发”、“参考文献”和“专业指导”指向了软件开发的全流程,包括但不限于需求分析、系统设计、编码实现、测试和部署。参考文献部分指出,文章可能包含了一系列参考文献,它们...

    阿里巴巴Java开发手册(华山版).pdf

    为了便于理解和应用,手册中还提供了大量的“正例”和“反例”,其中“正例”指出了推荐的编码实践,而“反例”则列举了应当避免的错误做法,有时还附带真实的错误案例分析。 手册中还提到,阿里巴巴已经在2017杭州...

    Java版象棋

    在这个项目中,我们将深入探讨Java编程语言在实现象棋游戏过程中的应用,以及棋局保存机制的关键技术。 首先,Java作为面向对象的编程语言,它的类库丰富,适合开发这种复杂度适中的游戏。在Java版象棋中,我们可能...

    violations-lib,用于分析静态代码分析中的报表文件的Java库。.zip

    在软件开发过程中,静态代码分析是一种重要的质量保证手段,它能够在编码阶段发现潜在的错误、不符合规范的地方或者性能问题,而无需运行程序。violations-lib就是为了解决如何有效管理和理解这些分析结果而诞生的。...

    Checkstyle 使用手册 以及常用方法

    这个"Checkstyle 使用手册 以及常用方法"涵盖了Checkstyle的基本使用和一些常见功能的详细解释。 首先,了解如何配置和运行Checkstyle至关重要。Checkstyle可以通过命令行、IDE插件(如Eclipse、IntelliJ IDEA)...

    JSP实现BBS论坛

    【JSP实现BBS论坛】是一项常见的软件工程实践,尤其在毕业设计中,它能帮助学生深入理解Web开发技术,尤其是动态网页制作。本项目基于JSP(Java Server Pages)技术,结合数据库管理系统MySQL,构建了一个功能强大的...

    SSM+Vue博客系统任务书.doc

    9. **编码语言与数据库**:开发语言使用Java,数据库选用MySQL,这是一套常见的Web开发组合,Java提供后端服务,MySQL存储数据。 10. **时间安排**:从2021年3月19日开始,按照1周到8周的时间节点,逐步完成主题...

    SecureCRS_33lc

    10. **代码规范和标准**:除了安全性,SecureCRS 还可能支持各种编程语言的编码规范,例如 PEP8(Python)、Google Java Style Guide 等,帮助团队保持一致的编码风格。 综上所述,"SecureCRS_33lc" 是一款针对软件...

    spring+stuts+hibernate论坛BBS.

    这些框架在企业级应用开发中非常常见,用于实现模型-视图-控制器(MVC)架构。 **Spring框架** 是一个全面的后端开发框架,它提供了依赖注入(DI)和面向切面编程(AOP)等核心特性。Spring还包含了处理Web请求的...

    亿美短信httpget

    在实际应用中,需要注意的是,亿美短信的服务可能有发送频率限制、短信内容审核等规则,开发者需要按照这些规则进行开发,以避免触发违规行为。同时,为了提高用户体验,还需要考虑短信发送失败后的重试机制和错误...

    bbs论坛 jsp

    【标题】"bbs论坛 jsp"所涉及的知识点主要集中在使用Java Server Pages(JSP)技术构建一个在线讨论平台,即BBS(Bulletin Board System)论坛。BBS论坛是互联网上一种常见的交互式信息交流工具,允许用户发布主题、...

Global site tag (gtag.js) - Google Analytics