Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
веб.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
934 Кб
Скачать
☆

3.4.2 Модифікатори доступу

Модифікатори можуть вказувати видимість методу або ж їх природу. У мові С# визначено безліч модифікаторів, і нижче наведено їх повний список.

Модифікатори видимості

Модифікатори видимості вказують, які інші одиниці коду можуть бачити елемент.

Модифікатор

До чого відноситься

Опис

public

До будь-яких типів чи членів

Елемент видимий в будь-якому іншому коді

protected

до будь-якого члену типу, а також до будь-якого вкладеного типу

Елемент видимий тільки в будь-якому похідному типові

internal

До будь-яких типів чи членів

Елемент видимий тільки в межах включаючої його збірки

private

до будь-якого члену типу, а також до будь-якого вкладеного типу

Елемент видимий тільки в межах типу, якому він належить

protected internal

до будь-якого члену типу, а також до будь-якого вкладеного типу

Елемент видимий тільки в межах включаючої його збірки, а також в будь-якому коді всередині похідного типу

Визначення типу можуть бути загальнодоступними або приватними залежно від того, як потрібно забезпечити його видимість ззовні збірки. Вказувати модифікатори protected, private або protected internal для типів не можна, оскільки ці рівні видимості не мають сенсу для типу, що знаходиться в просторі імен. Це означає, що вони можуть ставитися тільки до членів. Однак можливо створювати вкладені типи (тобто типи, що містяться всередині інших типів) з такою видимістю, оскільки в цьому випадку типи мають статус члена.

Інші модифікатори

Наступні модифікатори можуть бути застосовані до членів типів і характеризуються різним використанням. Деякі з них також є сенс використовувати для типів.

Модифікатор

До чого відноситься

Опис

new

До функцій-членів

Член приховує унаслідуваний член з тієї ж сигнатурою

static

До всіх членів

Член не пов'язаний з конкретним екземпляром класу

virtual

Тільки до класів і функцій-членів

Член може бути перевизначений в класах-наслідниках

abstract

Тільки до функцій-членів

Віртуальний член, який визначає сигнатуру, але не надає реалізації

override

Тільки до функцій-членів

Член перевизначає унаслідуваний

віртуальний або абстрактний член базового класу

sealed

До класів, методів і властивостей

Для класів означає, що від таких класів не можна наслідувати. Для властивостей і методів - член перевизначає унаслідуваний віртуальний член, але не може бути перевизначений ні одним членом похідних класів. Повинен застосовуватися в поєднанні з override

extern

Тільки до статичних методів [DllІmport]

Член реалізований зовні, на іншій мові

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]