Privátne vlastnosti v OOP v PHP
Vlastnosti objektu, ktoré je možné čítať a zapisovať zvonku, sa nazývajú verejné. Existujú aj privátne vlastnosti, ktoré budú prístupné len vnútri triedy.
Názvy privátnych vlastností je potrebné
deklarovať s modifikátorom prístupu private.
Urobme to:
<?php
class User {
private $name;
}
?>
Teraz zapíšme dáta do našej vlastnosti. To je možné urobiť napríklad v konštruktore triedy:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Urobme teraz metódu, ktorá bude vracať hodnotu našej vlastnosti:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->name;
}
}
?>
Vytvorme objekt triedy, odovzdaním mena používateľa ako parameter:
<?php
$user = new User('john');
?>
Pokus o priamy prístup k našej vlastnosti mimo triedy spôsobí chybu:
<?php
echo $user->name; // chyba
?>
A volanie našej metódy umožní prečítať túto vlastnosť:
<?php
echo $user->show(); // vypíše 'john'
?>
V triede Employee vytvorte
tri privátne vlastnosti: meno, plat
a vek.
Odovzdajte parametrom konštruktora hodnoty týchto vlastností.
Vytvorte metódu, ktorá vypíše údaje zamestnanca.