Junior — Middle
Pode explicar o princípio de encapsulamento em PHP e como ele é implementado na programação orientada a objetos?
sobes.tech IA
Resposta da IA
A encapsulação em PHP é um mecanismo de programação orientada a objetos que permite ocultar os detalhes internos da implementação de um objeto e fornecer acesso a eles apenas através de métodos específicos.
Em PHP, a encapsulação é implementada usando modificadores de acesso:
- public — acesso aberto a todos.
- protected — acesso apenas dentro da classe e seus herdeiros.
- private — acesso apenas dentro da própria classe.
Exemplo:
class User {
private $password; // propriedade oculta
public function setPassword($pass) {
// pode adicionar uma verificação ou hashing
$this->password = password_hash($pass, PASSWORD_DEFAULT);
}
public function verifyPassword($pass) {
return password_verify($pass, $this->password);
}
}
$user = new User();
$user->setPassword('secret');
var_dump($user->verifyPassword('secret')); // true
Assim, a encapsulação ajuda a proteger os dados do objeto do acesso e alteração direta, garantindo controle através dos métodos da classe.