您是否在类本身中使用数据成员或公共属性?

2024-03-06

如果我有一个像这样的简单的类设置:

class MyClass
{
    private string _myName = string.Empty;

    public string MyName
    {
        get
        {
            return _myName;
        }
    }

    public void DoSomething()
    {
        // Get the name...
        string name = string.Empty;

        name = _myName;

        // OR

        name = MyName;

        // ...and do something with it...
    }
}

我应该使用公共财产还是数据成员?

显然,在这个例子中它没有什么区别,因为它们都引用相同的变量。但是现实世界中公共财产的使用情况又如何呢?

一般来说,Public Properties 执行得很少,在这种情况下调用它们就可以了吗?或者人们是否在其公共属性中放入了许多不应由内部类引用调用的功能?

我在另一篇文章中看到关于不要将大量功能放入属性中的内容,因为在调试器中检查它们可能会产生意想不到的结果。真的吗?


使用属性 - 任何可能封装在 setter 和 getter 中的逻辑都应该适用,即使是在类本身中。如果 getter 和 setter 中没有逻辑,那么使用字段本身仍然不安全,因为如果在任何时候您希望围绕对这些字段的访问添加逻辑,您将不得不进行更多重构。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

您是否在类本身中使用数据成员或公共属性? 的相关文章

随机推荐