czytałem Trybików Into Python "oraz w rozdziale dotyczącym klas daje ten przykład:Dziedziczenie i przesłanianie __init__ w Pythonie
class FileInfo(UserDict):
"store file metadata"
def __init__(self, filename=None):
UserDict.__init__(self)
self["name"] = filename
Następnie autor mówi, że jeśli chcesz, aby zastąpić metodę __init__
, ty musi jawnie wywołać rodzica __init__
z poprawnymi parametrami.
- Co jeśli ta klasa
FileInfo
ma więcej niż jedną klasę przodków?- Czy muszę jawnie wywoływać wszystkie metody klas przodków "
__init__
?
- Czy muszę jawnie wywoływać wszystkie metody klas przodków "
- Czy muszę to zrobić w przypadku jakiejkolwiek innej metody, którą chcę zastąpić?
Uwaga: Przeciążenie to oddzielna koncepcja od nadpisania. –
tak, dzięki za naprawienie tego, –