Как применить сигнатуру метода для дочерних классов?
В таких языках, как C #, Java имеет перегрузки методов, что означает, что если дочерний класс не реализует метод с точной сигнатурой, не будет перезаписывать родительский метод.
Как мы применяем сигнатуру метода в дочерних классах в Python? В следующем примере кода показано, что дочерний класс перезаписывает родительский метод другой сигнатурой метода:
>>> class A(object):
... def m(self, p=None):
... raise NotImplementedError('Not implemented')
...
>>> class B(A):
... def m(self, p2=None):
... print p2
...
>>> B().m('123')
123
Хотя это не супер важно, или, может быть, из-за дизайна python (например, * args, ** kwargs). Я прошу это для ясности, если это возможно.
Пожалуйста, обратите внимание:
я пытался@abstractmethod
иABC
уже.