Junior — Middle
¿Puede explicar el concepto de ocultación de datos dentro de objetos en programación orientada a objetos?
sobes.tech AI
Respuesta de la IA
El ocultamiento de datos (encapsulación) en programación orientada a objetos significa restringir el acceso a los estados internos del objeto y proporcionar acceso a ellos solo a través de los métodos (funciones) del objeto.
Esto permite proteger los datos del uso y cambios incorrectos desde el exterior, manteniendo la integridad del objeto.
Por ejemplo, en JavaScript (Node.js) se pueden usar campos y métodos privados:
class User {
#password; // campo privado
constructor(name, password) {
this.name = name;
this.#password = password;
}
checkPassword(input) {
return input === this.#password;
}
}
const user = new User('Alice', 'secret');
console.log(user.name); // Alice
console.log(user.#password); // Error: campo privado
console.log(user.checkPassword('secret')); // true
De esta manera, los datos internos (por ejemplo, la contraseña) están ocultos del acceso directo, y la interacción con ellos se realiza a través de métodos controlados.