Hallo,
Jupp, da stimme ich Dir voll zu. Gut, es geht in der Aufgabe darum, die *Technik* der Vererbung in der jeweiligen Sprache zu erlernen, das ist klar. Aber ich frage mich, ob solche (immer wiederkehrenden) Beispiele nicht auch dazu beitragen, ein schlechtes Gefuehl fuer OO-Designs zu entwickeln.
Ziemlich sicher, ja.
Wir haben damals eine sehr ähnliche Aufgabe erhalten. Nur war dort die
Vaterklasse nicht Punkt, sondern Shape. Die Klasse hatte dann beispiels-
weise eine Methode, mit der das umschließende Rechteck (Rectangle)
ermittelt werden konnte, der Mittelpunkt usw. Davon wurde dann
ein Rechteck abgeleitet und von Rechteck wiederum Quadrat usw.
Das ist bei weitem sinnvoller und entspricht dem objektorienterten
Ansatz.
Was mir bei dem von molchi vorgegebenen Code (Klasse Punkt) noch
ziemlich negativ auffällt, ist diese ganze Geschichte mit
return new String("blub");
Mir ist zwar klar, daß der Lehrer/Professor den Schülern/Studenten
damit klar machen wollte, daß ein String auch nichts anderes als
ein Objekt ist. Trotzdem halte ich den Ansatz für schlecht. Wieso
sollte ich jemandem etwas beibringen, das unter realen Bedingungen
so gar nicht gemacht wird. Ein deutlicher Hinweis darauf, daß beim
Verwenden von >>return "blub";<< intern nichts anderes passiert als
return new String("blub");<< wäre meiner Meinung nach absolut
ausreichend. Für mein Verständnis hatte es damals zumindest gereicht.
In dem Zusammenhang noch sowas wie >>"blub".length();<< gezeigt,
vielleicht >>new String("blub").length();<< gegenübergestellt, und
auch der letzte sollte es begriffen haben. Oder bin ich da zu
optimistisch?
Gruß
Slyh
Es gibt 10 Arten von Menschen. Solche, die das Binärsystem verstehen, und solche, die es nicht verstehen.