Seite 1 von 1

Konstruktor Anweisungen der Mutterklasse

Verfasst: Freitag 5. Februar 2021, 12:16
von Shogoon87
Heyho,
Ich stehe grade vor dem Problem, dass ich manche Methodenaufrufe im Mutterklassekonstruktor vor und manche nach dem Konstruktor der Kindklasse ausführen will.

Code: Alles auswählen

class A:
 __init__(self):
  print("1")
  print("2")
  print("3")

class B(A):
 __init__(self):
  super(B, self).__init__()
  print("4")
Die Ausführungsreihenfolge bei Erstellung eines Objekts der Klasse B soll wie folgt sein:
1
2
4
3

Ist das irgendwie möglich?

Re: Konstruktor Anweisungen der Mutterklasse

Verfasst: Freitag 5. Februar 2021, 13:04
von __deets__
Nein. Was möglich ist in A eine Methode nach 2 und vor 3 aufzurufen, die du in B überlädst. Man muss dabei aufpassen, dass der Vertrag zwischen A und seinen Ableitungen nicht grob undurchschaubar wird. Aber es ist ein halbwegs oker weg.

Re: Konstruktor Anweisungen der Mutterklasse

Verfasst: Freitag 5. Februar 2021, 15:20
von Shogoon87
Ja, das habe ich fast geahnt :) Hätte ja sein können, dass es da noch einen "eleganteren" Weg gibt. Viele Danke!