PHP'деги ООП'де static мисал

Анда бизде төмөнкүдөй 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

Биздин эсептөөчүбүздү приват кылыңыз. Анын маанисин атайын метод менен гана алууга болсун.