Klassen Objekte mit unterschiedlichen Startparametern erstellen

Julius5898

Mitglied
Hallo,

ich bin noch ein Anfänger in der Programmierung und möchte Java lernen,
ich habe eine Hausaufgabe in Java auf und bin an einem Punkt, wo ich nicht so recht weiter weiß. Meine Aufgabe ist es 3 Objekte vom Typ Rechteck zu erstellen. Diese Rechtecke haben logischerweise 4 Eckpunkte, die ich vom Typen Punkt angeben soll.
Beim ersten Rechteck habe ich den Punkt ObenLinks und UntenRechts.
Beim zweiten Rechteck habe ich die Höhe, Breite und den Punkt UntenRechts gegeben.
Und beim dritten Rechteck habe ich den MittelPunkt, die Höhe und wieder die Breite gegeben.

Meine Frage ist jetzt:
Wie kann ich mit diesen unterschiedlichen Informationen über die 3 Objekte die vom selben Typen sein sollen, dann 3 unterschiedliche Konstruktoren bauen?
Schließlich haben das 2. und 3. Rechteck gleich viele StartParameter, weshalb Java natürlich nicht entscheiden kann, welchen Konstruktor es jetzt verwenden soll.

Vielen Dank im voraus
Julius
 

VfL_Freak

Top Contributor
Moin,
Beim zweiten Rechteck habe ich die Höhe, Breite und den Punkt UntenRechts gegeben.
Und beim dritten Rechteck habe ich den MittelPunkt, die Höhe und wieder die Breite gegeben.
Sind denn auch die Datentypen der Werte vorgeben rsp. welche Datentypen haben sie bei dir?
Du kannst durchaus mehrere Konstruktoren mit gleicher Anzahl Parameter haben, solange sich jeweils mind. ein Datentyp unterscheidet!

Bespiel:
Java:
konstruktorA( int, int, String);
konstruktorB( long, int, String);

VG Klaus
 

Julius5898

Mitglied
Nein die Datentypen sind nicht direkt vorgegeben. Bloß, woher weiß dann Java, dass das eine long und kein int ist, bei der Wertübergabe in der Klammer. Weil in meiner Main-Klasse schreib ich das doch nicht rein, oder doch?

Weil bis jetzt habe ich erst einmal überlegt es so anzugehen, wie in den Bildern gezeigt:Rectangle.pngPunkt.pngMain.png
 

VfL_Freak

Top Contributor
hmm, syntaktisch wäre das so schon korrekt, aber die nutzlosen Parameter sind so sicher nicht gefordert!
Poste mal die komplette Aufgabenstellung!

und BTW: poste Code bitte immer in Code-Tags und nicht als Anhang!
Läßt sich besser lesen und vor allem zitieren :)

VG Klaus

EDIT:
würden beim zweiten Konstruktor nicht Höhe und Breite zur Beschreibung reichen??
was genau ist eigentlich mit "Mittelpunkt" gemeint?
 

Julius5898

Mitglied
Okay, das ist die Aufgabenstellung:

Erstellen Sie mehrere Varianten des Datentyps „Rectangle“ für die Repräsentationeines Rechteckes im zweidimensionalen Raum. Implementieren Sie jeweils einen Konstruktor mit Parametern, die toString-Methode, eine Methode zur Berechnung der Fläche und Methoden zur Berechnung der Koordinaten der vier Eckpunkte (Rückgabe von Punkt-Objekt).

Verwenden Sie in jeder Klasse die gleichen Methodensignaturen (Ausnahme: jeweiliger Konstruktor).

a) Definieren Sie das Rechteck über zwei Eckpunkte.
b) Definieren Sie das Rechteck über den unteren rechten Punkt in Verbindung

mit Höhe und Breite.
c) Definieren Sie das Rechteck über den Mittelpunkt in Verbindung mit Höhe und Breite.

Testen Sie alle Datentypen anhand eines kleinen Beispielprogrammes. Erzielen alle Klassen bei gleichen Rechtecken die gleichen Ergebnisse
 

mrBrown

Super-Moderator
Mitarbeiter
Ah, es soll nicht eine Klasse Rechteck geben, sondern drei verschiedene, die sich jeweils im Konstruktor und der internen Repräsentation unterscheiden.
 

Neue Themen


Oben