Запропонувати правкуПокращити цю статтюДопрацюйте відповідь до «Що робить модифікатор доступу public?». Ваші зміни проходять модерацію перед публікацією.Потрібне підтвердженняКонтентЩо ви змінюєте🇺🇸EN🇺🇦UAПереглядЗаголовок (UA)Коротка відповідь (UA)Модифікатор `public` у TypeScript - це **найвідкритіший** рівень доступу. Він робить властивість або метод **доступними звідусіль**: зсередини класу, з його нащадків і ззовні, через екземпляр класу. **Ключове:** `public` використовується за замовчуванням, тому його можна не писати явно.Показується над повною відповіддю для швидкого нагадування.Відповідь (UA)ЗображенняМодифікатор `public` у TypeScript - це **найвідкритіший** рівень доступу. Він робить властивість або метод **доступними звідусіль**: - зсередини класу, - з його нащадків, - і ззовні, через екземпляр класу. --- ## 1. Синтаксис ```javascript class User { public name: string; public constructor(name: string) { this.name = name; } public greet(): void { console.log(`Hello, ${this.name}!`); } } ``` > Модифікатор `public` можна **не писати**, він використовується **за замовчуванням**. --- ## 2. Приклад використання ```javascript class User { public name: string; public age: number; constructor(name: string, age: number) { this.name = name; this.age = age; } public greet() { console.log(`Hi, I'm ${this.name}, ${this.age} years old.`); } } const user = new User("Tim", 25); user.name = "Alex"; // доступний user.greet(); // доступний ``` Властивості й методи `public` можна вільно читати, змінювати і викликати **ззовні класу**. --- ## 3. Доступ усередині та поза класом | Звідки звертаємося | Доступ до `public` | |---|---| | Усередині класу | Так | | У нащадку | Так | | Ззовні (через екземпляр) | Так | --- ## 4. Модифікатор `public` у параметрах конструктора Скорочена форма оголошення: ```javascript class User { constructor(public name: string, public age: number) {} } const u = new User("Tim", 30); console.log(u.name); // Tim ``` > TypeScript **автоматично створює поля** `name` і `age` та присвоює їм передані значення. --- ## 5. За замовчуванням усе `public` Якщо не вказати модифікатор, поведінка буде такою самою: ```javascript class User { name: string; // це public за замовчуванням greet() {} } ``` --- ## 6. Порівняння з іншими модифікаторами | Модифікатор | Видимість | Чи можна використовувати поза класом? | |---|---|---| | **public** | Скрізь | Так | | **private** | Тільки всередині класу | Ні | | **protected** | У класі та нащадках | Ні | --- ## Підсумок `public`: - Доступний **скрізь** (усередині, ззовні, у нащадках); - Використовується **за замовчуванням**; - Можна ставити перед властивостями, методами і параметрами конструктора; - Дозволяє явно вказати, що член класу є **частиною відкритого інтерфейсу класу**. --- Просто запам'ятай: > `public` = "доступно всім".Для рев’юераПримітка для модератора (необов’язково)Бачить лише модератор. Прискорює рев’ю.