Прыклад на static у ААП у PHP

Хай у нас ёсць вось такі клас User:

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

Давайце зробім так, каб гэты клас падлічваў колькасць сваіх аб'ектаў. Для гэтага зробім статычную ўласцівасць count. Спачатку запішам у яе значэнне 0, а пры стварэнні кожнага новага аб'екта будзем павялічваць гэта значэнне на 1.

Будзем павялічваць значэнне нашага лічыльніка ў канструктары аб'екта:

User.php<?php
  class User
  {
    public static $count = 0; // лічыльнік аб'ектаў
    public $name;
    
    public function __construct($name)
    {
      $this->name = $name;
      
      // Павялічваем лічыльнік пры стварэнні аб'екта:
      self::$count++;
    }
  }
?>

Праверым, што ўсё працуе:

index.php<?php
  $user1 = new User('user1');
  echo User::$count; // выведзе 1
  
  $user2 = new User('user2');
  echo User::$count; // выведзе 2
?>
Задание 1

Зрабіце наш лічыльнік прыватным. Хай яго значэнне можна будзе атрымліваць з дапамогай спецыяльнага метаду.