Глосарій

Абстрактний клас

Абстрактний клас — клас, від якого не можна створити екземпляр безпосередньо. Він визначає загальну структуру і може містити як реалізовані методи, так і абстрактні (лише сигнатура, реалізація — у підкласі).

Коли обирати абстрактний клас vs інтерфейс

Приклад

abstract class Shape {
  abstract public function area(): float;

  public function describe(): string {
    return "Area: " . $this->area(); // спільний код
  }
}

class Circle extends Shape {
  public function area(): float { return M_PI * $this->r ** 2; }
}