3年前 (2021-10-25)  Java系列 |   抢沙发  312 
文章评分 0 次,平均分 0.0

随着时间的推移,Java已经成为软件开发中流行的编程语言。虽然java比C++或C++更受欢迎,但这种编程语言仍然存在问题。下面是开发人员可能犯的七个Java开发错误,以及如何避免这些错误。

忘记在代码中加“Break”

Paper fellows and Australian help的技术作家奥斯汀·莫登(Austin Molden)说:“忘记‘break中断’部分可能会对编码有害。”,因为忘记代码中的这一部分会使程序先写“0”,然后写“1”,并会遍历整个“switch”语句,直到最后到达“break”。并且,在生产过程中可能损坏代码之前,不要忽略该错误。因此,不要忘记“break”在代码中需要的任何位置使用关键字。“

不使用右大括号

花括号{}用于编码({})有打开和关闭代码的方法。许多开发人员,尤其是新手,倾向于忘记使用右大括号关闭代码。虽然编译器和现代IDE都很容易发现这个错误,但程序员仍然需要注意是否缺少右大括号。记住这两个大括号的最好方法是在在把代码放进去之前。

让门敞开,以防内存泄漏

仅仅因为Java使用自动内存管理,并不意味着它在保存内存时是完美的。

内存分配易受内存泄漏的影响。持久对象引用存在问题,因为垃圾回收器无法在对象仍有引用的情况下清除对象。这些引用是通过定义一个包含某些对象的静态字段的类创建的。在集合类“丢弃”表示它永远不会被收集。或者,内存泄漏可能指一组相互引用的对象,导致循环依赖,并使垃圾收集器无法确定它们是否需要。无论哪种方式,内存泄漏都可能导致对象消耗内存。

为了防止内存泄漏,请尝试“pollLast”方法,该方法返回元素并将其从队列中删除。

不处理Exceptions情况

另一个Java开发错误是不处理Exceptions异常。虽然忽略异常很有诱惑力,但处理异常是一个更好的主意。与其忽略异常,不如尝试:

  • 转述异常
  • 向日志中添加消息
  • 向用户显示错误对话框

做这些事情可以让其他开发人员知道为什么异常没有得到处理。

比较将(==)与“.equals”混淆

==运算符和equals()方法是两个不同的东西,尽管它们有明显的相似性。

  • ==运算符直接比较两个对象。
  • equals()方法从语义上比较两个对象(它们的数据)。

仅当直接比较两个对象时才使用==运算符。除此之外,在有意义地比较两个对象时,请使用equals()方法。

非参数化泛型类型

泛型类型击败了原始类型,因为原始类型既不是参数化的,也不是类R的静态成员(换句话说,不是从R的超类或超接口继承的)。自1.5版以来,泛型编程已经将Java改进到了参数化和安全的程度,从而使必要的信息不会无意中隐藏在代码中。尽管编译器可以从原始类型中发现错误,但使用泛型类型仍然很重要,这样就可以立即发现不一致,并且不会破坏类型系统。

违反契约

“代码Contracts——无论是来自标准库还是第三方供应商——都可以供开发人员参考,”Theather roo和State of writing的商业博客作者Jorja Gilfillan说。“与其他任何东西一样,编码也有一套规则,开发人员应该遵守。”

违反Contracts契约有时可能会产生无害的影响,并可能导致以下负面结果:

  • 危害生产的错误代码
  • 错误的用户界面行为
  • 错误的数据报告
  • 数据丢失
  • 应用程序性能差

Gilfillan补充道:“最好是严格遵守契约,这样就不会破坏代码中的任何内容。尽管有些错误乍一看似乎无害,但千万不要让它们继续存在。”

结论

与任何其他编程语言一样,Java也有其优缺点。

最好的办法是承认代码中的任何和所有Java开发错误,并立即修复它们,以便代码能够高效运行。

  
 

除特别注明外,本站所有文章均为老K的Java博客原创,转载请注明出处来自https://javakk.com/2476.html

关于

发表评论

表情 格式

暂无评论

登录

忘记密码 ?

切换登录

注册