Privātās īpašības OOP PHP

Objekta īpašības, kuras var nolasīt un ierakstīt no ārpuses, sauc par publiskām. Pastāv arī privātas īpašības, kuras būs pieejamas tikai klasēs iekšienē.

Privāto īpašību nosaukumus nepieciešams deklarēt ar piekļuves modifikatoru private. Izveidosim to:

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

Tagad ierakstīsim datus mūsu īpašībā. To var izdarīt, piemēram, klases konstruktorā:

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

Tagad izveidosim metodi, kas atgriezīs mūsu īpašības vērtību:

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

Izveidosim klases objektu, padodot parametrā lietotāja vārdu:

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

Mēģinājums tieši piekļūt mūsu īpašībai ārpus klases izraisīs kļūdu:

php<?php
  echo $user->name; // kļūda
?>

Bet mūsu metodes izsaukšana ļaus izlasīt šo īpašību:

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

Klasē Employee izveidojiet trīs privātas īpašības: vārdu, algu un vecumu.

Задание 2

Konstruktorā padodiet parametrā šo īpašību vērtības.

Задание 3

Izveidojiet metodi, kas izvadīs darbinieka datus.