Статья
📘 Глава 11. Применение ООП на практике — система пользователей
Оглавление
Теперь применим ООП в практике — создадим простую систему пользователей: обычных и админов. Это уже приближено к реальным проектам.
🧩 Задача
Создать структуру, где:
-
есть базовый класс Пользователь;
-
от него наследуется класс Админ;
-
у каждого есть имя и функция приветствия;
-
у админа — дополнительная возможность (например, удаление пользователя).
🧱 Шаг 1. Базовый класс Пользователь
class Пользователь {
protected $имя;
public function __construct($имя) {
$this->имя = $имя;
}
public function приветствие() {
echo "Привет, я пользователь $this->имя<br>";
}
}
🛠 Шаг 2. Наследуем Админ
class Админ extends Пользователь {
public function приветствие() {
echo "Здравствуйте, я администратор $this->имя<br>";
}
public function удалитьПользователя($пользователь) {
echo "Пользователь {$пользователь->имя()} был удалён<br>";
}
}
Добавим метод для получения имени (getter):
class Пользователь {
protected $имя;
public function __construct($имя) {
$this->имя = $имя;
}
public function имя() {
return $this->имя;
}
public function приветствие() {
echo "Привет, я пользователь $this->имя<br>";
}
}
🧪 Шаг 3. Тестируем
$петя = new Пользователь("Петя");
$петя->приветствие();
$admin = new Админ("Ольга");
$admin->приветствие();
$admin->удалитьПользователя($петя);
🔍 Результат:
Привет, я пользователь Петя
Здравствуйте, я администратор Ольга
Пользователь Петя был удалён
🎯 Что мы применили:
-
Классы, объекты
-
Конструкторы
-
Наследование
-
Переопределение методов
-
protected
свойства -
Взаимодействие между объектами
19