在对象方法中,如果不是getter/setter方法,访问对象属性的“纯粹”或“正确”的方法是什么?
我知道在对象外部应该使用getter/setter,但在内部你只需要这样做:
Java:
String property = this.property;
PHP:
$property = $this->property;
或者你会这样做:
Java:
String property = this.getProperty();
PHP:
$property = $this->getProperty();
如果我的Java有点不好,请原谅,已经有一年没有用Java编程了...
编辑:
似乎人们认为我只是在谈论私有或受保护的变量/属性。当我学习面向对象编程时,我被教导要为每个属性使用getter/setter,即使它是公开的(实际上我被告知永远不要将任何变量/属性设置为公开)。所以,我可能从一开始就存在错误的假设。答案中的人们似乎在说你应该拥有公共属性,并且那些属性不需要getter和setter,这与我所学的以及我所说的相反,尽管也许这也需要讨论。这可能是一个不错的话题,可以单独提出来讨论...