有些.NET
个库使用方法来访问对象数据而不是getter,即HttpWebResponse.GetResponseStream()
。
还有一些属性访问流的示例,即HttpResponse.OutputStream
。
我的问题是何时使用哪种访问形式?为什么?
答案 0 :(得分:9)
答案 1 :(得分:8)
好问题。虽然属性只是一对get / set方法的语法糖,但是应该在不同的时间使用两个。
通常,您应该在以下情况下使用属性样式的getter:
通常,您应该在以下情况下使用getter方法:
在一个句子中,如果从概念上讲所需的值是对象HAS,则使用属性。如果所需的值是对象DOES的结果,请使用方法。
答案 2 :(得分:3)
好问题。 This文章提出了一些好处。一般来说,我在计算成本高时使用方法,而在计算成本不高时使用属性(即返回存储值)。
答案 3 :(得分:1)
我的意见,我敢肯定,它将快速达到-10,是你应该只使用属性进行序列化。在所有其他情况下,显式方法调用更可取,因为当您查看它时,您知道正在调用具有可能副作用的方法。
我想“正确”(tm)的答案是,当你所有的方法都会返回值时,可以使用getter / setter,但是如果有任何工作要做,请使用方法。