Junior — Middle
El tudná magyarázni az inkapszuláció fogalmát az objektumorientált programozásban?
sobes.tech MI
Válasz az MI-től
Az inkapszuláció az objektumorientált programozás egyik alapelve, amely magában foglalja az adatok (tulajdonságok) és azokkal dolgozó módszerek együttes kezelését egy objektum vagy osztály belsejében. Lehetővé teszi az objektum belső állapotának elrejtését, és csak bizonyos módszerek (getterek és setterek) segítségével való hozzáférést, így védi az adatokat a külső közvetlen módosításától.
Például JavaScript-ben privát tulajdonságot hozhatunk létre szimbólum vagy aláhúzás konvenció használatával:
class User {
#password; // privát mező
constructor(name, password) {
this.name = name;
this.#password = password;
}
checkPassword(input) {
return input === this.#password;
}
}
const user = new User('Alice', '12345');
console.log(user.name); // Alice
console.log(user.#password); // Hiba, hozzáférés megtagadva
console.log(user.checkPassword('12345')); // true
Így az inkapszuláció segít ellenőrizni az adatokhoz való hozzáférést, növeli a biztonságot és megkönnyíti a kód karbantartását.