JavaScript да ООП да мерос олишда конструктор

Мерос олишда ота-онанинг конструкторини кайта аниклаш мумкин. Келгила, мисолда кўрамиз. Бизда куйидаги ота-она классы бор дейлик:

javascriptclass User {
  constructor(name, surn) {
    this.name = name;
    this.surn = surn;
  }
  
  getName() {
    return this.name;
  }
  getSurn() {
    return this.surn;
  }
}

Ота-она классдан куйидаги класс мерос олсин:

javascriptclass Student extends User {
  
}

Фарз килайлик, биз авлод классада конструкторни кенгайтиришни истаймиз, унга кушимча параметрлар куйиш билан:

javascriptclass Student extends User {
  constructor(name, surn, year) {
    
  }
}

Бундай холда, биз биринчи сатрда ота-онанинг конструкторини super орқали чакиришимиз шарт:

javascriptclass Student extends User {
  constructor(name, surn, year) {
    super();
  }
}

super буйруги ассан ёзилганда ота-онанинг конструкторидир. Шунинг учун унга талаб қилинадиган параметрларни узатамиз:

javascriptclass Student extends User {
  constructor(name, surn, year) {
    super(name, surn);
  }
}

Энди авлодда ўқиш йилини авлоднинг ўз хусусиятига ёзамиз:

javascriptclass Student extends User {
  constructor(name, surn, year) {
    super(name, surn);
    this.year = year;
  }
}

Ўқиш йили учун геттер яратамиз:

javascriptclass Student extends User {
  constructor(name, surn, year) {
    super(name, surn);
    this.year = year;
  }
  
  getYear() {
    return this.year;
  }
}
Задание 1

Фарз килайлик, Employee класси ушбу дарсдаги User классдан мерос олсин.

Задание 2

Employee классада ота-онанинг конструкторини кайта аникланг, унга ёш ва маош параметрларини кушиш билан.

Задание 3

Ёш ва маош учун геттерлар яратинг.