Если у меня есть родительский класс с двумя методами:
class Parent():
@abstractmethod
@staticmethod
def functionA():
pass
def functionB():
return __class__.functionA() + 1
И я реализую дочерний класс:
class Child(Parent):
def functionA(): # this function is different for each kind of child
return 3
В конце концов, цель дочерних классов будет только для звонка functionB()
. Это работает? Конечно, я мог бы поместить functionB()
в дочерний класс и заставить его работать, но поскольку functionB()
одинаков для всех типов дочерних классов, я бы не хотел писать повторяющийся код для каждого класса?
Также, уместно ли здесь использовать __class__
?