可能是重复问题:
什么是C#中的字段和属性的区别
我是一名初级程序员,已经了解了类属性。书籍说明属性允许您间接访问成员变量。好的,那么它与直接将字段公开并直接访问有何不同?
以下是Jesse Liberty在《学习C# 3.0》中的一句话:
例如,您可能希望外部类能够读取值,但不能更改该值;或者您可能希望编写一些代码,以便内部字段只能接受特定范围内的值。如果您授予外部类对成员字段的自由访问权,则无法控制任何内容。
我不理解他在这里说什么。有人能进一步解释一下或举例说明为什么我要使用属性而不是将字段公开吗?就我现在的理解,它们都可以完成完全相同的事情...所以我显然在这里遗漏了什么。
以下是Jesse Liberty在《学习C# 3.0》中的一句话:
例如,您可能希望外部类能够读取值,但不能更改该值;或者您可能希望编写一些代码,以便内部字段只能接受特定范围内的值。如果您授予外部类对成员字段的自由访问权,则无法控制任何内容。
我不理解他在这里说什么。有人能进一步解释一下或举例说明为什么我要使用属性而不是将字段公开吗?就我现在的理解,它们都可以完成完全相同的事情...所以我显然在这里遗漏了什么。