JavaScript'te OOP'de Özel Metotlar
Sadece özellikler değil, metotlar da özel olabilir. Genellikle, yardımcı metotlar, yanlışlıkla sınıf dışından çağrılamamaları için özel yapılır.
Bir örnek üzerinden inceleyelim. Aşağıdaki sınıfa sahip olduğumuzu varsayalım:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
}
Bu sınıfta, bir dizeyi parametre olarak alan ve ilk karakterini büyük harf yapan özel bir metot yapalım:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
#cape(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Yardımcı metodumuzu başka bir metodun içinde kullanalım:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#cape(this.#name);
}
#cape(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Kontrol edelim. Sınıfımızın bir nesnesini oluşturalım:
let user = new User('john');
Yardımcı metodu kullanan genel metodu çağıralım:
console.log(user.show());
Aşağıdaki kodda yardımcı metodu özel yapın:
class Employee {
constructor(name, salary) {
this.name = name;
this.salary = salary;
}
getSalary() {
return this.addSign(this.salary);
}
addSign(num) {
return num + '₺';
}
}