Sobes.tech
Назад к вопросам
Middle
6

Как получить доступ к атрибуту класса извне — на чтение или на изменение? Как ограничить прямой доступ?

Компании, где спрашивали
Perfomance lab

Ответ от нейросети

sobes.tech AI

Для доступа к атрибуту класса извне обычно используют методы доступа — геттеры и сеттеры. Это позволяет контролировать чтение и изменение значения.

Пример на TypeScript:

class User {
  private _name: string;

  constructor(name: string) {
    this._name = name;
  }

  // Геттер для чтения
  get name(): string {
    return this._name;
  }

  // Сеттер для изменения
  set name(newName: string) {
    if (newName.length > 0) {
      this._name = newName;
    }
  }
}

const user = new User('Alice');
console.log(user.name); // чтение через геттер
user.name = 'Bob'; // изменение через сеттер

Чтобы ограничить прямой доступ к атрибуту, делают его приватным (private или protected), тогда напрямую к нему нельзя обратиться извне, только через методы класса.