变异子与访问子 在计算机科学中 变异子方法mutator或setter是一种用于控制变量更改的方法通常变异子伴随着访问子 accessor或getter返回私有成员变量的值 变异子方法最常用于面向对象的编程封装与封装原则保持一致根据这个原则类的成员变量被设为私有以隐藏和保护它们不受其他代码的影响并且只能由公共成员函数变异子方法修改该函数将所需的新值作为参数來修改私有成员变量可以将变异子方法与赋值运算符重载进行比较 变异子方法也可以在非面向对象的环境中使用在这种情况下对要修改的变量的引用与新值一起传递给变异子编译器无法限制代码绕过变异子方法并直接更改变量开发人员有责任确保仅通过变异子方法修改变量而不是直接修改变量 在支持它们的编程语言中属性提供了一种方便的替代方案而不放弃封装的效用 在下面的示例中完全实现的 变异子方法还可以验证输入数据或采取进一步的操作例如触发事件