Sobes.tech
Junior — Middle

Jakie funkcje należy zdefiniować dla pełnej enkapsulacji klasy?

sobes.tech AI

Odpowiedź od AI

Aby w pełni zaimplementować enkapsulację klasy w PHP, konieczne jest zdefiniowanie metod dostępowych do prywatnych lub chronionych właściwości — zazwyczaj są to gettery (get) i settery (set). Pozwalają one kontrolować odczyt i modyfikację danych wewnętrznych obiektu, nie dając bezpośredniego dostępu do właściwości.

Przykład:

class User {
    private string $name;

    public function getName(): string {
        return $this->name;
    }

    public function setName(string $name): void {
        // Można dodać walidację
        $this->name = $name;
    }
}

W ten sposób właściwości pozostają ukryte, a dostęp do nich odbywa się przez metody, co jest istotą enkapsulacji.