Java程序最容易犯的错误有哪些呢

技术Java程序最容易犯的错误有哪些呢今天就跟大家聊聊有关Java程序最容易犯的错误有哪些呢,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。  1.Duplicat

今天,我将和大家谈谈Java程序最容易犯的错误。很多人可能不太了解。为了让大家更加了解,边肖为大家总结了以下内容。希望你能从这篇文章中有所收获。

1.Duplicated Code

代码重复几乎是最常见的气味。他也是《重构》的主要目标之一。代码重复往往来自于复制粘贴的编程风格相应的OAOO是一个好系统的重要标志。

  2.Long method

它是传统结构的遗产。一个方法应该有自我独立的意图。不要把几个意图放在一起。

3.Large Class

一个大班意味着你给了一个班太多的责任。这里的规则是一级一责。

4.Divergent Change

一个班级内容的变化率是不一样的。有的状态每小时换一次,有的状态几个月一年才换一次;有些州因为这个原因而改变,有些州因为其他原因而改变一次。面向对象的抽象是把相对不变性和相对变化分开。将问题的一个方面与另一个方面分开。这使得这些相对不变的可以重复使用。变更的每个方面都可以单独重用。这些不同变化的共存使得重用变得非常困难。

5.Shotgun Surgery

这和上面的正好相反。系统某一部分的变化涉及许多其他地方的相关变化。这些变化率和变化内容相似的状态和行为通常应该放在同一个类中。

6.Feature Envy

对象的目的是封装与这些状态密切相关的状态和行为。如果一个类的方法经常使用get方法来访问其他类的状态进行计算,那么您应该考虑将行为移动到涉及状态数量最多的类。

  7.Data Clumps

有些数据通常像孩子一样分组使用:它们一起出现在许多类的成员变量和许多方法的参数中。也许这些数据应该独立地形成对象。

 8.Primitive Obsession

面向对象的新手通常习惯于使用几种原始类型的数据来表示一个概念。例如,对于范围,它们将使用两个数字。对于货币,他们会用一个浮点数来表示。因为不使用对象来表达问题中的概念,使得代码难以理解,解决问题的难度大大增加。一个好习惯是扩展语言可以提供的原语类型,用小对象来表示范围、金额、转化率、邮政编码等等。

 9.Switch Statement

基于常量的switch语句是OO的敌人,应该改成子类、状态或者策略。

  10. Parallel Inheritance Hierarchies

平行的继承层次是霰弹枪手术的特例。因为当您在一个级别中更改一个类时,您必须同时更改另一个级别的并行子类。

看完以上内容,你对Java程序最常见的错误有什么进一步的了解吗?如果您想了解更多知识或相关内容,请关注行业资讯频道,感谢您的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/94840.html

(0)

相关推荐

  • Eclipse插件如何安装、升级和卸载

    技术Eclipse插件如何安装、升级和卸载这篇文章将为大家详细讲解有关Eclipse插件如何安装、升级和卸载,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。安装在外部的插件的的目录结构通

    攻略 2021年11月26日
  • Intellij IDEA智能补全的方法有哪些

    技术Intellij IDEA智能补全的方法有哪些本篇内容介绍了“Intellij IDEA智能补全的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情

    攻略 2021年11月16日
  • 如何解决VB.NET注册表权限问题

    技术如何解决VB.NET注册表权限问题这篇文章主要介绍如何解决VB.NET注册表权限问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!本实例需要项目引用:Imports Microsoft.Win

    攻略 2021年12月2日
  • 微服务设计的方法是什么

    技术微服务设计的方法是什么这篇文章主要讲解了“微服务设计的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“微服务设计的方法是什么”吧!一、微服务架构理论1.六边形

    攻略 2021年11月16日
  • cloudflare视频转码接口怎么弄

    技术cloudflare视频转码接口怎么弄本篇文章给大家分享的是有关cloudflare视频转码接口怎么弄,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 /

    攻略 2021年10月20日
  • C++11:maketuple

    技术C++11:maketuple C++11:make_tuple翻译来自:https://thispointer.com/c11-make_tuple-tutorial-example/
    本文中,我

    礼包 2021年11月23日