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<?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<?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<?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<?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<?php
  echo $user->name; // hata
?>

Metodumuzu çağırmak ise bu özelliği okumamıza izin verecektir:

php<?php
  echo $user->show(); // 'john' yazacak
?>
Задание 1

Employee sınıfında üç özel özellik yapın: isim, maaş ve yaş.

Задание 2

Bu özelliklerin değerlerini yapıcı metod parametresi olarak iletin.

Задание 3

Çalışanın verilerini gösterecek bir metod yapın.