პრივატული თვისებები OOP-ში 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 კლასში გააკეთეთ
სამი პრივატული თვისება: სახელი, ხელფასი
და ასაკი.
გადაეცით კონსტრუქტორს პარამეტრად ამ თვისებების მნიშვნელობები.
გააკეთეთ მეთოდი, რომელიც გამოიტანს მუშაკის მონაცემებს.