Hallo Forum,
ich habe eine Frage zu Konstruktoren und Instanzerzeugung im Zusammenhang mit Vererbung.
Und zwar, hatte ich in der Klausur eine Aufgabe:
Was sind die Ausgabeergebnisse an den Stellen 1 bis 3?
In der Klausur habe ich die Lösungen gehabt:
Stelle 1: Instanz klasse A erzeugt
Stelle 2: Instanz klasse B erzeugt
Stelle 3: Instanz klasse B erzeugt
Dies wurde auch als richtig bewertet.
Aber: ich habe das Ganze im Eclipse ausprobiert und da kriege ich das Ergebnis:
Stelle 1:
Instanz klasse A erzeugt
Stelle 2:
Instanz klasse A erzeugt
Instanz klasse B erzeugt
Stelle 3:
Instanz klasse A erzeugt
Instanz klasse B erzeugt
Ich möchte die Klausur wiederholen und bin jetzt sehr verwirrt. Was davon ist richtig?
Danke im Voraus!
Capri
ich habe eine Frage zu Konstruktoren und Instanzerzeugung im Zusammenhang mit Vererbung.
Und zwar, hatte ich in der Klausur eine Aufgabe:
Java:
class A{
public A(){
System.out.println("Instanz klasse A erzeugt");
//...
}
}
class B extends A{
public B(){
System.out.println("Instanz klasse B erzeugt");
//...
}
class Test{
public void static main(String [] args){
// Stelle 1:
A i1 = new A();
// Stelle 2:
B i2 = new B();
// Stelle 3:
A i3 = new B();
//...
}
}
Was sind die Ausgabeergebnisse an den Stellen 1 bis 3?
In der Klausur habe ich die Lösungen gehabt:
Stelle 1: Instanz klasse A erzeugt
Stelle 2: Instanz klasse B erzeugt
Stelle 3: Instanz klasse B erzeugt
Dies wurde auch als richtig bewertet.
Aber: ich habe das Ganze im Eclipse ausprobiert und da kriege ich das Ergebnis:
Stelle 1:
Instanz klasse A erzeugt
Stelle 2:
Instanz klasse A erzeugt
Instanz klasse B erzeugt
Stelle 3:
Instanz klasse A erzeugt
Instanz klasse B erzeugt
Ich möchte die Klausur wiederholen und bin jetzt sehr verwirrt. Was davon ist richtig?
Danke im Voraus!
Capri