JavaScript'te OOP'de Kalıtım Sırasında Yapıcı Metot

Kalıtım sırasında üst sınıfın yapıcı metodunu geçersiz kılabilirsiniz. Bir örnek üzerinden inceleyelim. Aşağıdaki gibi bir üst sınıfımız olsun:

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

Üst sınıftan aşağıdaki sınıfın miras aldığını varsayalım:

javascriptclass Student extends User {
  
}

Alt sınıfta yapıcı metodu genişletip, ona ek parametreler eklemek istediğimizi varsayalım:

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

Bu durumda, ilk satırda super aracılığıyla üst sınıfın yapıcı metodunu mutlaka çağırmamız gerekir:

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

super komutu temelde üst sınıfın yapıcı metodudur. Bu nedenle ona gerekli parametreleri aktaralım:

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

Şimdi alt sınıfta öğrenim yılını alt sınıfın kendi özelliğine yazalım:

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

Öğrenim yılı için bir getter metodu yapalım:

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

Employee sınıfının bu dersteki User sınıfından miras aldığını varsayalım.

Задание 2

Employee sınıfında üst sınıfın yapıcı metodunu, yaş ve maaş parametreleri ekleyerek geçersiz kılın.

Задание 3

Yaş ve maaş için getter metotları yapın.