Privaatsed omadused OOP-s PHP-s
Objekti omadusi, mida saab väljaspoolt lugeda ja kirjutada, nimetatakse avalikeks. On olemas ka privaatsed omadused, mis on kättesaadavad ainult klassi sisemuses.
Privaatsete omaduste nimed tuleb
deklareerida ligipääsumodifikaatoriga private.
Teeme seda:
<?php
class User {
private $name;
}
?>
Nüüd kirjutame andmed meie omadusse. Seda saab teha näiteks klassi konstruktoris:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Teeme nüüd meetodi, mis tagastab meie omaduse väärtuse:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->name;
}
}
?>
Loome klassi objekti, andes parameetrina kasutaja nime:
<?php
$user = new User('john');
?>
Katse pöörduda otse meie omaduse poole väljaspool klassi põhjustab vea:
<?php
echo $user->name; // viga
?>
Meie meetodi kutsumine võimaldab seda omadust lugeda:
<?php
echo $user->show(); // väljastab 'john'
?>
Klassis Employee tehke
kolm privaatset omadust: nimi, palk
ja vanus.
Andke konstruktori parameetrina nende omaduste väärtused.
Tehke meetod, mis väljastab töötaja andmed.