C Sharp. Відповідно до парадигми про інкапсуляції, тип або член типу (тобто поле, функція та ін.) може приховати себе від інших типів або інших збірок, використавши один з наступних п'яти модифікаторів доступу до декларації:
public - тип або член типу повністю доступний. Елементи перерахувань (enum) або члени інтерфейсу завжди мають такий доступ.
internal - тип буде доступний лише в рамках однієї збірки.
private - член типу доступний лише в рамках цього типу, тобто він прихований від всіх зовнішніх типів. По замовчуванню всі члени мають такий режим доступу.
protected - член класу є доступним лише в рамках цього класу, або всередині класу який від нього наслідується.
protected internal - елемент класу C, який знаходиться в збірці A доступний лише в межах C, в межах класу який наслідується від С, або в рамках збірки A. Тобто коротко він означає protected або internal, а не protected і internal
Обмеження при використанні модифікаторів доступу
Тип або його член не можуть об'явити більш широкі права доступу до себе, ніж будь-який інший тип який він використовує у власній декларації. Наприклад, клас не може мати модифікатор public, якщо він наслідується від класу internal.