为什么 C# 中属性的 get 和 set 方法都被称为访问器(accessor),而不是访问器和变异器(mutator)?

4
我读到(在C#中),getter方法被称为“访问器”,setter方法被称为“修改器” (例如:方法get_Name(){}和set_Name(){})。但是当我们谈论属性时,(例如:string Name {get; set;})我读到我们不能将get和set方法称为“访问器”和“修改器”,相反,我读到我们必须将get属性称为“访问器”和set属性称为“访问器”。
也就是说,我的理解是需要说属性有两个“访问器”(get和set),而且不能说属性有“访问器”(get)和“修改器”(set)。为什么呢?
我完全理解方法和属性的工作原理。我对代码没有问题。我只是想理解术语。

你说的“为什么”是什么意思?那只是规范编写者决定使用的词语。此外,我从未见过“mutator”这个术语被这样使用。你有官方文档的链接吗? - Sweeper
@sweeper 我的意思是我所写的内容。不,我没有官方文档的链接。 - Nika
1个回答

5
为什么你认为"accessor"意味着"get"? Accessor只是一种通用术语,提供对属性的某种访问方式。这可以是读取访问(“getter”)、写入访问(“setter”)或其他访问方式。事件也有访问器(添加和移除,尽管可能还有其他访问方式)。Accessors比“与成员交互的方法”更简洁,并且比“getter和setter”更通用。但最终,出于某些原因:该概念需要一个名称来简化和规范使用,而这就是选择的词语。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接