[FIXED] So rufen Sie den Standardkonstruktor einer abstrakten Klasse in Java auf

Ausgabe

Ich habe versucht, über dieses Thema zu recherchieren, konnte aber keine Klarheit darüber finden. Bitte helfen Sie mir dabei.

Lösung

Sie können super() in Ihrer untergeordneten Klasse verwenden. Sie können keine Instanz einer abstrakten Klasse erstellen (das wissen Sie vielleicht)

  abstract class Parent{
        Parent(){
            System.out.println("Parent contructor!");
        }
    }


    public class Child extends Parent{

        public Child() {
            super();
            System.out.println("Child contructor!");
        }

        public static void main(String[] args) {
            new Child();
        }
    }

super()Auch wenn Sie in der Klasse nichts angeben Child, wird dennoch der Konstruktor der übergeordneten Klasse aufgerufen, da super()er vom Compiler in den Standardkonstruktor der ChildKlasse eingefügt wird, während die .class generiert wird. Wenn Sie nur einen parametrisierten Konstruktor in der übergeordneten Klasse haben, müssen Sie den übergeordneten Klassenkonstruktor explizit super(..parameter)in Ihrem untergeordneten Klassenkonstruktor aufrufen. Hoffe das hilft!


Beantwortet von –
ProgrammerBoy


Antwort geprüft von –
David Marino (FixError Volunteer)

0 Shares:
Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like