这个问题很简单,但我认为了解我们为什么这么做非常重要。

我可以在类中创建一个属性,如下所示:

第一种方法:

public class MyClass
{
   public string MyProperty {get;set;}
}


第二种方法:

public class MyClass
{
    private string _myProperty;

    public string MyProperty
    {
        get
        {
            return _myProperty;
        }
        set
        {
            _myProperty = value;
        }
    }
}


几乎所有文章都使用后一种方法。为什么我们需要在类中创建一个临时变量来保存字符串值。为什么我们不能只使用第一种方法?第二种方法是否有好处?创建额外的变量来存储值不是很糟糕的内存和性能吗?

最佳答案

Automatic properties直到C#3.0才添加到C#中,因此在C#3.0出现之前就编写了许多使用后一种形式的示例或文章。除非您需要在资产设置者和获取者中做额外的工作,否则没有理由选择一个。

关于c# - 为什么我们需要创建类变量来获取和设置属性?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4423197/

10-17 01:01