В TypeScript, языке программирования, который расширяет Javascript, предусмотрены различные типы модификаторов доступа. Они включают в себя public
, private
и protected
– все три из них являются корректными ответами на вопрос о том, какие типы модификаторов доступа поддерживаются в TypeScript. Эти модификаторы играют важную роль в обеспечении безопасности кода и управлении его видимостью.
Модификатор public
определяет, что член класса доступен всем. Это значит, что его можно получить или изменить в любом месте кода. Например:
class Animal {
public name: string;
constructor(name: string) {
this.name = name;
}
}
let dog = new Animal('Бобик');
console.log(dog.name); // Бобик
В отличие от public
, private
делает член класса недоступным для внешнего использования. Пример:
class Animal {
private name: string;
constructor(name: string) {
this.name = name;
}
}
let dog = new Animal('Бобик');
console.log(dog.name); // Ошибка: свойство 'name' является приватным и доступно только внутри класса 'Animal'
Protected
ведет себя подобно private
, но разрешает доступ к члену класса в подклассах. Пример:
class Animal {
protected name: string;
constructor(name: string) {
this.name = name;
}
}
class Dog extends Animal {
sayHello() {
console.log(`Привет, меня зовут ${this.name}`);
}
}
let dog = new Dog('Бобик');
dog.sayHello(); // Привет, меня зовут Бобик
В заключении, для обеспечения надежности и структуры в коде важно разумно использовать модификаторы доступа. Они помогают облегчить сложность программы, управляя доступом к членам класса.