PHP да ООПда Хусусий хусусиятлар
Объектнинг ташқаридан ўқиш ва ёзиш мумкин бўлган хусусиятлар оммавий деб аталади. Хусусий хусусиятлар ҳам мавжуд бўлиб, улар фақат класс ичидагина дастурлар томонидан ишлатилиши мумкин.
Хусусий хусусиятлар номлари
private дастур ёрдамида белгиланиши керак.
Келинг, буни амалга оширамиз:
<?php
class User {
private $name;
}
?>
Энди биз ўз хусусиятмизга маълумотларни киритамиз. Буни, масалан, класс конструкторида бажариш мумкин:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Энди биз ўз хусусиятимизнинг қийматини қайтарадиган метод яратамиз:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->name;
}
}
?>
Класс объектини яратамиз, унга фойдаланувчи номини параметр сифатида ўтказамиз:
<?php
$user = new User('john');
?>
Бизнинг хусусиятга тўғридан-тўғри класс ташқарида мурожаат қилиш уриниши хатоликка олиб келади:
<?php
echo $user->name; // хатолик
?>
Бизнинг методни чақириш эса бу хусусиятни ўқиш имконини беради:
<?php
echo $user->show(); // 'john' чиқади
?>
Employee классында
учта хусусий хусусият яратинг: исм, маош
ва ёш.
Уларнинг қийматларини конструкторга параметр сифатида ўтказнг.
Ходим ҳақида маълумотларни чиқарувчи метод яратинг.