JavaScript-də OOP-də Private Metodlar
Təkcə xassələr deyil, metodlar da private ola bilər. Adətən köməkçi metodlar private edilir ki, təsadüfən sinif xaricindən çağırıla bilməsinlər.
Nümunəyə baxaq. Tutaq ki, aşağıdakı sinifimiz var:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
}
Gəlin bu sinifdə parametr kimi sətir qəbul edən və onun birinci simvolunu böyük hərf edən bir private metod yaradaq:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
#cape(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Köməkçi metodumuzdan başqa bir metodun daxilində istifadə edək:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#cape(this.#name);
}
#cape(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Gəlin yoxlayaq. Sinifimizdən obyekt yaradaq:
let user = new User('john');
Köməkçi metoddan istifadə edən public metodu çağıraq:
console.log(user.show());
Aşağıdakı kodda köməkçi metodu private edin:
class Employee {
constructor(name, salary) {
this.name = name;
this.salary = salary;
}
getSalary() {
return this.addSign(this.salary);
}
addSign(num) {
return num + '
;
}
}