Es wird funktionieren, aber es wird wahrscheinlich jeden verwirren, der versucht, Ihren Code zu lesen (einschließlich Sie, es sei denn, Sie erinnern sich genau daran). Vergessen Sie nicht, dass Sie, wenn Sie eine Methode von einer bestimmten Elternklasse aufrufen möchten, einfach Folgendes tun können:
%Vor% Nun, "legal" ist hier ein fragwürdiger Begriff. Der Code ruft schließlich A.method
auf, da der Typ super
von der Suche ausgeschlossen wird. Ich würde diese Verwendung von super
flaky als die geringste Erwägung betrachten, da es ein Mitglied der Vererbungshierarchie überspringt (scheinbar hapher), was nicht mit dem übereinstimmt, was ich als Entwickler erwarten würde. Da Benutzer von super
bereits ermutigt werden, die Konsistenz zu wahren, würde ich diese Vorgehensweise empfehlen.