gpt4 book ai didi

java - 访问类中的字段时的良好实践

转载 作者:行者123 更新时间:2023-12-02 12:51:20 25 4
gpt4 key购买 nike

当您必须访问类中的“成员变量”/字段时,直接访问它还是调用 getter 和 setter 是一个好习惯吗?为什么?

最佳答案

我几乎只看到将字段设为私有(private)的好处,并且仅通过 getter 和可能的 setter 提供访问

  • 受控访问。如果您只想提供读取访问权限,或仅提供写入访问权限,则只能通过使用 getter/setter 来实现
  • 如果您想为 bean 属性触发 PropertyChangeEvents,您可以将此代码包含在您的 setter 中。否则,所有直接修改此字段的调用也应该触发更改事件
  • 我个人发现在我的 IDE 中更容易发现谁修改了该字段。对该字段的唯一直接访问是在类中(因为它是私有(private)字段),所有外部更改都通过 setter 进行。这使得调试速度比必须使用现场观察点更快
  • 想要在字段更改时执行额外操作的子类可以覆盖 setter、调用 super.set 并执行额外操作

我能想到的唯一可能的缺点是它需要编写更多的代码(对于 getter 和 setter),以及从类外部访问字段的代码。但对于当前的 IDE,这是一个非常蹩脚的借口

一些额外的文献: link1 , link2

关于java - 访问类中的字段时的良好实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8408857/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com