有没有被称为私人班级的东西

时间:2014-04-22 06:38:59

标签: c# class

  1. 如果我们没有指定公共/私人/受保护,它会是什么?
  2. 有没有被称为私人课程的东西?

4 个答案:

答案 0 :(得分:3)

1:这取决于该类是否嵌套。顶级类默认为internal。嵌套类默认为private

class TopLevelClass {
    class PrivateClass {

    }
}

2:是的,但仅适用于嵌套类:

class TopLevelClass {
    private class ExplicitlyPrivateClass {

    }
    class ImplicitlyPrivateClass {

    }
}

答案 1 :(得分:1)

如果您没有为主Public/Private/Protected指定class,那么它将为internal,对于嵌套类,默认访问说明符将为private。< / p>

private class存在。只有在另一个类中声明它时,才能访问private class。表示它是父类的private

class example //which is default interal
{
      private class ex
      {
      }

      class ex1 //default private
      {
      }
}

答案 2 :(得分:1)

1)如果未指定修饰符,则可见性将取决于省略它的情况;该问题在this问题中进行了讨论。

2)在以下代码中,InnerClass中的privateOuterClass

namespace ClassTest
{

    class OuterClass
    {
        private class InnerClass
        {
        }

        OuterClass()
        {
            InnerClass Test = new InnerClass();
        }

    }

    class Program
    {
        static void Main(string[] args)
        {
            OuterClass TestOne = new OuterClass();
            InnerClass TestTwo = new InnerClass(); // does not compile
        }
    }
}

答案 3 :(得分:0)

What are the Default Access Modifiers in C#?

并且有一个私人课程,但在我看来,这是毫无意义的