PHP'de OOP'de Özel Özellikler
Nesnenin, dışarıdan okunabilen ve yazılabilen özelliklerine genel (public) denir. Ayrıca, yalnızca sınıfın içinde erişilebilen özel (private) özellikler de vardır.
Özel özelliklerin isimleri
private erişim değiştirici ile
bildirilmelidir.
Hadi bunu yapalım:
<?php
class User {
private $name;
}
?>
Şimdi özelliğimize veri yazalım. Bu, örneğin sınıfın yapıcı metodunda (constructor) yapılabilir:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Şimdi özelliğimizin değerini döndürecek bir metod yapalım:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->name;
}
}
?>
Sınıfın bir nesnesini oluşturalım, isimi parametre olarak geçerek:
<?php
$user = new User('john');
?>
Sınıfın dışında doğrudan özelliğimize erişme girişimi hataya yol açacaktır:
<?php
echo $user->name; // hata
?>
Metodumuzu çağırmak ise bu özelliği okumamıza izin verecektir:
<?php
echo $user->show(); // 'john' yazacak
?>
Employee sınıfında
üç özel özellik yapın: isim, maaş
ve yaş.
Bu özelliklerin değerlerini yapıcı metod parametresi olarak iletin.
Çalışanın verilerini gösterecek bir metod yapın.