Yksityiset ominaisuudet OOP:ssa PHP:ssä
Objektin ominaisuudet, joita voidaan lukea ja kirjoittaa ulkopuolelta, kutsutaan julkisiksi. On olemassa myös yksityisiä ominaisuuksia, jotka ovat saatavilla vain luokan sisällä.
Yksityisten ominaisuuksien nimet on
ilmoitettava käyttöoikeusmodifioijalla private.
Tehdäänpä se:
<?php
class User {
private $name;
}
?>
Kirjoitetaan nyt dataa ominaisuuteemme. Tämä voidaan tehdä esimerkiksi luokan konstruktorissa luokan:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Tehdään nyt metodi, joka palauttaa ominaisuutemme arvon:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->name;
}
}
?>
Luodaan luokan olio, lähettämällä parametrina käyttäjänimen käyttäjä:
<?php
$user = new User('john');
?>
Yritys viitata suoraan ominaisuuteemme luokan ulkopuolella johtaa virheeseen:
<?php
echo $user->name; // virhe
?>
Metodimme kutsuminen mahdollistaa tämän ominaisuuden lukemisen:
<?php
echo $user->show(); // tulostaa 'john'
?>
Luokassa Employee tee
kolme yksityistä ominaisuutta: nimi, palkka
ja ikä.
Lähetä konstruktorin parametrina näiden ominaisuuksien arvot.
Tee metodi, joka tulostaa työntekijän tiedot.