Конструктор дар меросии дар ООП дар 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

Барои синну солиҳо ва маош геттерҳо созед.