Privatūs savybės OOP PHP

Objekto savybės, kurias galima skaityti ir rašyti iš išorės, vadinamos viešosiomis. Taip pat egzistuoja privatūs savybės, kurios bus prieinamos tik viduje klasės.

Privačių savybių vardus reikia deklaruoti su prieigos modifikatoriumi private. Padarykime tai:

php<?php
  class User {
    private $name;
  }
?>

Dabar įrašykime duomenis į mūsų savybę. Tai galima padaryti, pavyzdžiui, klasės konstruktoriuje:

php<?php
  class User {
    private $name;
    
    public function __construct($name) {
      $this->name = $name;
    }
  }
?>

Dabar sukurkime metodą, kuris grąžins mūsų savybės reikšmę:

php<?php
  class User {
    private $name;
    
    public function __construct($name) {
      $this->name = $name;
    }
    
    public function show() {
      return $this->name;
    }
  }
?>

Sukurkime klasės objektą, perduodant parametru vartotojo vardą:

php<?php
  $user = new User('john');
?>

Bandymas kreiptis tiesiogiai į mūsų savybę už klasės ribų sukels klaidą:

php<?php
  echo $user->name; // klaida
?>

O mūsų metodo iškvietimas leis perskaityti šią savybę:

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

Klasėje Employee padarykite tris privačias savybes: vardą, atlyginimą ir amžių.

Задание 2

Perduokite konstruktoriaus parametru šių savybių reikšmes.

Задание 3

Padarykite metodą, kuris išves darbuotojo duomenis.