Private egenskaber i OOP i PHP

Objekt egenskaber, som kan læses og skrives udefra, kaldes offentlige. Der findes også private egenskaber, som kun vil være tilgængelige inde i klassen.

Navnene på private egenskaber skal deklareres med adgangsmodifikatoren private. Lad os gøre dette:

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

Lad os nu skrive data til vores egenskab. Dette kan gøres for eksempel i klassens konstruktør :

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

Lad os nu lave en metode, som vil returnere værdien af vores egenskab:

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

Lad os oprette et objekt af klassen, og videregive brugerens navn som parameter :

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

Et forsøg på at tilgå vores egenskab direkte uden for klassen vil føre til en fejl:

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

Og et kald til vores metode vil tillade at læse denne egenskab:

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

I klassen Employee skal du lave tres private egenskaber: navn, løn og alder.

Задание 2

Overfør værdierne for disse egenskaber via konstruktøren som parameter.

Задание 3

Lav en metode, som vil udskrive medarbejderens data.