为什么我的私有枚举仍然可以被其他类看到

时间:2011-10-19 08:57:14

标签: c#

我有一个枚举_levels,它被声明为私有,但它仍可供其他类访问。 我想要的是通过使用属性来访问它。

请考虑下面的代码。

感谢。

public sealed class TestClass
{
    private static TestClass instance = new TestClass();
    private enum _levels { A, B, C, D, E, F, G, H, ASE, SE, SSE, TL, AM };                  

    public TestClass(){}

    public static TestClass Instance
    {
     get { return instance; }
    }   

    public _levels Levels
    {
        get { return _levels; }         
    }
}

3 个答案:

答案 0 :(得分:4)

我认为这就是你要做的事情

public sealed class TestClass
{
    public enum Levels { A, B, C, D, E, F, G, H, ASE, SE, SSE, TL, AM };                  

    private Levels _levels; 
    public Levels Levels
    {
        get { return _levels; }         
    }

    private static TestClass instance = new TestClass();
    public static TestClass Instance
    {
     get { return instance; }
    }   

    public TestClass(){}
}

答案 1 :(得分:0)

您的类定义没有意义,因为枚举类型的定义比具有该类型的属性更难访问。

类型定义必须至少与该类型的用法(在您的情况下是属性)一样可见。

答案 2 :(得分:0)

枚举是一种类型。您不能将type用作变量。