JavaScript'te OOP'de Metot ve Özellik İsim Çakışmaları

Özellik ve metot isimleri çakışmamalıdır, bu bir çakışmaya yol açar. Bir örnek üzerinden inceleyelim. Aşağıdaki sınıfa sahip olduğumuzu varsayalım:

javascriptclass User {
  name() {
    console.log('metot');
  }
}

Bu sınıfın bir nesnesini oluşturalım:

javascriptlet user = new User;

Metodunu çağıralım, şimdilik her şey çalışıyor:

javascriptuser.name(); // çalışıyor

Şimdi ise aynı isimli özelliğe veri yazalım, böylece metot kodunun üzerine yazmış olalım:

javascriptuser.name = 'str';
user.name(); // hata

Bu tür çakışmalardan kaçınmak için metotlara her zaman fiil isimleri, özelliklere ise isim isimleri verin.

Задание 1

Aşağıdaki kodda yapılan hatayı düzeltin:

javascriptclass Employee {
  constructor(salary) {
    this.salary = salary;
  }
  salary() {
    return this.salary + '
;
  }
}