Sifa za Kifedha katika OOP katika PHP

Sifa za kitu ambazo zinaweza kusomwa na kuandikwa kutoka nje, huitwa sifa za umma. Kuna pia sifa za kifedha, ambazo zitapatikana tu ndani ya darasa.

Majina ya sifa za kifedha yanahitaji kutangazwa na kiwakilishi cha upatikanaji private. Hebu tufanye hivi:

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

Sasa tuandike data katika sifa yetu. Hii inaweza kufanyika, kwa mfano, katika mjenzi wa darasa:

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

Sasa tufanye njia ambayo ita rudisha thamani ya sifa yetu:

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

Tuunde kitu cha darasa, tukipitisha kigezo jina la mtumiaji:

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

Jaribio la kurejelea moja kwa moja kwa sifa yetu nje ya darasa litasababisha hitilafu:

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

Lakini utumiaji wa njia yetu utaruhusu kusoma sifa hii:

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

Katika darasa Employee fanya sifa tatu za kifedha: jina, mshahara na umri.

Задание 2

Pitisha kwa mjenzi thamani za sifa hizi.

Задание 3

Fanya njia ambayo itatoa data ya mfanyakazi.