微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 在没有实例化的情况下访问类中的属性

让我们说我有一节课:

public class foo
{

    public string bar 
    {
        get { return "A Value"; }
    }
}

如果我只想访问bar中包含的值,并且我对实际的类不感兴趣,我可以执行以下操作:

string value = new foo().bar;

这真的是获取价值的最佳方式吗?我不想让这个属性(和类)静态.

如果我有很多关于我想访问的bar属性的类,是否会有更通用的方法呢?

编辑:它不是静态的原因是它被覆盖的属性,我相信它不能是静态的:

public class parent
{
    public abstract string bar { get; }
}

public class foo : parent
{
    public override string bar
    {
        get { return "A Value"; }
    }
}

解决方法

您需要使用静态,它允许没有实例的方法属性

public class foo
{
    public static string bar 
    {
        get { return "A Value"; }
    }
}

我知道拥有无瞬间成员的其他方式(除了竞争而且在某种意义上有限).

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐