访问器 (getter) 和设置器 (setter)

2025-07-30 18:31 更新

访问器 (getter) 和设置器 (setter)

Tip
在访问和设置变量值时,如果访问器和设置器(又名为访问子 accessor 和变异子 mutator)可以产生有意义的作用或效果,则可以使用。

特别来说,如果在当下或者可以预见的未来,读写某个变量的过程很复杂或者成本高昂, 则应该使用这种函数。

如果一对访问器和设置器仅仅用于读写一个内部属性(attribute),你应该直接用公有属性取代它们。相较而言,如果设置操作会让部分状态无效化或引发重建,则需要使用设置器。显式的函数调用表示可能出现特殊的操作。如果只有简单的逻辑,或者在重构代码后不再需要访问器和设置器,你可以用属性(property)替代。

(译者注:重视封装的面向对象程序员看到这个可能会很反感,因为他们一直被教育:所有成员变量都必须是私有的!其实,那真的是有点麻烦啊。试着去接受Pythonic哲学吧)

访问器和设置器应该遵守命名规范,例如 get_foo() 和 set_foo()

如果之前的代码通过属性获取数据,则不能把重新编写的访问器/设置器与这一属性绑定。 应该让任何用老办法访问变量的代码出现显眼的错误,让使用者意识到代码复杂度有变化。

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号