Sobes.tech
Junior — Middle

Čo znamenajú a aké sú úrovne prístupu k prvkom v objektovo orientovanom programovaní?

sobes.tech AI

Odpoveď od AI

V objektovo orientovanom programovaní (OOP) určujú úrovne prístupu, ktoré časti programu môžu pristupovať k určitým prvkom triedy (vlastnostiam a metódam). V PHP existujú tri hlavné úrovne prístupu:

  1. public — prvky sú dostupné odkiaľkoľvek, ako vo vnútri, tak mimo triedy.
  2. protected — prvky sú dostupné iba vo vnútri triedy a jej potomkov.
  3. private — prvky sú dostupné iba vo vnútri triedy, kde boli deklarované, a nie v potomkoch ani zvonku.

Príklad:

class Example {
    public $publicVar = 'public';
    protected $protectedVar = 'protected';
    private $privateVar = 'private';

    public function testAccess() {
        echo $this->publicVar;    // Dostupné
        echo $this->protectedVar; // Dostupné
        echo $this->privateVar;   // Dostupné
    }
}

class ChildExample extends Example {
    public function testAccess() {
        echo $this->publicVar;    // Dostupné
        echo $this->protectedVar; // Dostupné
        // echo $this->privateVar; // Chyba: nedostupné
    }
}

$obj = new Example();
echo $obj->publicVar;      // Dostupné
// echo $obj->protectedVar; // Chyba
// echo $obj->privateVar;   // Chyba

Týmto spôsobom úrovne prístupu pomáhajú enkapsulovať dáta a kontrolovať ich viditeľnosť.