Kurze Frage zur Vererbung

  • C#

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Kurze Frage zur Vererbung

    Hallo, ich habe folgende Situation:

    Quellcode

    1. interface Interface
    2. {
    3. public void Update();
    4. }
    5. class Class
    6. {
    7. public void Update(){return;}
    8. }
    9. class Inherited : Class, Interface
    10. {
    11. public void Update()
    12. {
    13. base.Update();
    14. }
    15. }
    Alles anzeigen


    Gibts dabei irgendwelche Probleme?
    Danke.
    "das war meine letzte flamewar PM an dich ."
  • Zuerst: mach das public bei im Interface weg.
    Ansonsten: Da du ja sowohl das Interface implementierst als auch von der Klasse erbst, die Update Methode der Klasse aber weder abstrakt noch virtuell ist, wird Inherited.Update() die Methode von Class verdecken. Es wird also das Interface implementiert (diesem wird immer Vorrang gegeben).

    Es ist alles in allem eine unsaubere Lösung die ich an deiner Stelle noch einmal überarbeiten würde.

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von rootnode ()