当我为System.Console
类编写适配器时,这有点令我印象深刻。为什么In
,Out
和Error
属性与SetIn
,SetOut
和SetError
方法配对?为什么不使用该物业的二传手呢?这是一个架构决策还是存在阻止.NET框架开发人员这样做的限制?
答案 0 :(得分:1)
我不能代表原作者,但至少有五个充分理由将set方法与属性getter(可能还有受保护的setter)结合使用:
说了这么多,我在dotPeek中查看了所述方法的代码(SetIn
和get_In
)。我找不到任何不使用二传手的借口。 In
getter与SetIn
方法具有相同的权限属性。