Приклад чистого Python 3 для успадкування; абстрактні методи Переповнення стека

Фактичний код сильно відрізняється і стосується зовсім іншої теми, але я відчув, що цей невеликий приклад може бути кращим, оскільки моя проблема полягає у розумінні ключових концепцій для складних сценаріїв успадкування (а не мого конкретного домену).

python

Давайте розглянемо, що у нас є базовий клас Entity:

Це базовий клас, який успадковують інші конкретні сутності, і атака () повинна бути абстрактною, оскільки кожна сутність повинна реалізовувати свій власний стиль методу атаки.

Тепер ми могли б реалізувати деякі сутності:

Це чудово працює. Однак я намагаюся знайти гарне рішення (сухий) для реалізації "здібностей" та інших речей.