Передача данных в сеттер дочернего компонента в Angular

Можно сделать так, чтобы данные из родительского компонента попадали в сеттер приватного свойства. Давайте посмотрим на примере. Пусть у нас есть приватное свойство с сеттером и геттером:

class UserComponent { private _name: string = ''; set name(name: string) { if (name.length < 3) { this._name = name; } else { console.log('error'); } } get age() { return this._userAge; } }

Для примера давайте сделаем сеттер возраста, в котором реализуем проверку переданных данных. Также сделаем геттер для вывода свойств пользователя:

class UserComponent { private _name: string = ''; @Input() set name(name: string) { if (name.length > 3) { this._name = name; } else { console.log('error'); } } get name() { return this._name; } }

Теперь передадим данные из родительского компонента в дочерний:

<user-data name="john"></user-data>

А в дочернем компоненте выведем переданное имя на экран:

<p>{{ name }}</p>

Объясните, почему приватное свойство _name начинается с символа подчеркивания.

Реализуйте сеттеры и геттеры для названия продукта и его цены, которые будут передаваться из родительского компонента.