Уровни доступности (Справочник по C#)
Модификаторы доступа public, protected, internal или private используются для указания одного из следующих объявленных уровней доступности к членам.
Объявленная доступность |
Значение |
---|---|
public |
Неограниченный доступ. |
protected |
Доступ ограничен содержащим классом или типами, которые являются производными от содержащего класса. |
internal |
Доступ ограничен текущей сборкой. |
protected internal |
Доступ ограничен текущей сборкой или типами, которые являются производными от содержащего класса. |
private |
Доступ ограничен содержащим типом. |
Только один модификатор доступа может быть указан для члена или типа, за исключением случая, когда используется сочетание protectedinternal.
Модификаторы доступа не могут быть указаны для пространств имен.Пространства имен не имеют ограничений доступа.
В зависимости от контекста, в котором производится объявление члена, допускаются только некоторые объявленные уровни доступности.Если модификатор доступа не указывается в объявлении члена, используется доступность по умолчанию.
Типы верхнего уровня, не вложенные в другие типы, могут иметь только уровень доступности internal или public.Для этих типов уровнем доступности по умолчанию является internal.
Вложенные типы, которые являются членами других типов, могут иметь объявленные уровни доступности, указанные в следующей таблице.
Члены типа |
Уровень доступности членов по умолчанию |
Допустимые объявленные уровни доступности члена |
---|---|---|
enum |
public |
None |
class |
private |
public protected internal private protected internal |
interface |
public |
None |
struct |
private |
public internal private |
Доступность вложенного типа зависит от домена доступности, который определяется объявленной доступностью члена и доменом доступности типа, непосредственно содержащего вложенный тип.Однако домен доступности вложенного типа не может выходить за границы домена доступности содержащего его типа.
Спецификация языка C#
Дополнительные сведения см в Спецификация языка C#. Спецификация языка является предписывающим источником информации о синтаксисе и использовании языка C#.
См. также
Ссылки
Модификаторы доступа (Справочник по C#)
Область доступности (Справочник по C#)
Ограничения на использование уровней доступности (справочник по C#)
Модификаторы доступа (Руководство по программированию в C#)
Основные понятия
Руководство по программированию на C#