java - 从对象内部访问属性

标签 java oop

从非 getter/setter 方法的对象方法中访问对象属性的“纯粹”或“正确”方法是什么?

String property = this.property;

或者你会这样做:

String property = this.getProperty();

最佳答案

没有正确的方法。这完全取决于具体情况:

  • 使用 this.property 的主要原因是它消除了对 getter 和 setter 方法的需要。这减少了代码大小,这本身就是有益的,因为它降低了调试和维护的总体成本。

  • 使用 getProperty() 的主要原因是它可以让您对其余代码隐藏数据结构重构。例如,假设您出于某种原因决定将 property 字段移动到嵌入对象 foo。然后您可以轻松地重新定义 getProperty() 而不会影响任何其他代码:

    Object getProperty() { return foo.property; }

    如果您使用 JPA 等框架,您还可以通过使用 getter 和 setter 来获得性能优势,因为 JPA 框架可以对这些框架执行其他方式无法实现的优化。

关于java - 从对象内部访问属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50238868/

相关文章:

java - Android机器不在网络上

python - 使用 (x,y) 坐标到达特定的 "village"(Python 3)

javascript - 为什么原型(prototype) javascript 在这种情况下不起作用

java - 多态歧义区分是如何工作的?

java - spring-boot-test spyBean 注释未注入(inject)依赖项

java - Forefront TMG 与 java 和 php (ftp)

java - 从构造函数调用 setter

java - 如何从放置在另一个类/包中的按钮切换选项卡?

java - 数据库服务使用什么技术?

java - 下面的方法是如何工作的