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