Jerarquía de herencia de clases en POO en JavaScript

Se puede realizar herencia de una clase, que a su vez es descendiente. Veamos un ejemplo. Supongamos que tenemos la siguiente clase padre:

javascriptclass User {
  setName(name) {
    this._name = name;
  }
  getName() {
    return this._name;
  }
}

De esta clase hereda la siguiente clase:

javascriptclass Student extends User {
  setYear(year) {
    this._year = year;
  }
  getYear() {
    return this._year;
  }
}

Y de esta clase hereda otra clase más:

javascriptclass StudentProgrammer extends Student {
  setSkill(skill) {
    this._skill = skill;
  }
  getSkill() {
    return this._skill;
  }
}
Задание 1

Crea una clase Employee, que herede de la clase User.

Задание 2

Crea una clase Programmer, que herede de la clase Employee.

Задание 3

Crea una clase Designer, que herede de la clase Employee.

Задание 4

Añade a las clases creadas por ti varios métodos.