MartinX3-EducationOrganization / HBRS_SA_S3_EIDIP_2017_WS

Übungsaufgaben des Faches Einführung in die Programmierung des 3. Semesters (Nachschreiben) HBRS in SA im Fach
GNU Affero General Public License v3.0
2 stars 0 forks source link

Übung 12_4 #65

Closed MartinX3 closed 6 years ago

MartinX3 commented 6 years ago

Aufgabe 4 [Programmierung]

Hinweis: Bei der in dieser und der folgenden Aufgabe zu verwendenden Klasse Punkt, die Punkte im zweidimensionalen Raum modelliert, handelt es sich um die aus Kapitel 3 der Vorlesung und aus Blatt 06, Aufgabe 6 bekannte Klasse, die jedoch so angepasst wurde, dass sie Rundungsfehler ignoriert. Sie finden die Klasse in LEA zu dieser Aufgabe.

Modellieren Sie zweidimensionale geometrische Figuren, namentlich (achsparallele) Rechtecke. Deklarieren Sie dazu die folgenden Typen und überlegen Sie dabei, welche Klassen und Methoden konkret oder abstrakt deklariert werden sollten. Stellen Sie nur Methoden bereit, die sinnvolle Ergebnisse liefern.

Figur modelliert zweidimensionale Figuren und stellt folgende Eigenschaften bereit:

FigurPerMitte hat die Eigenschaften von Figur und beschreibt intern die Lage einer Figur im Raum durch ihren Mittelpunkt (als private Instanz, auf die keine externe Partei Zugriff haben soll). Sie spezialisiert die Eigenschaften von Figur oder ergänzt sie in folgender Weise:

RechteckXYPerMitteLaengen ist eine FigurPerMitte und beschreibt Rechtecke intern zudem durch ihre (nichtnegativen) Ausdehnungen in x- und y-Richtung. Sie spezialisiert die Eigenschaften von FigurPerMitte oder ergänzt sie in folgender Weise:

Verwenden Sie final überall wo möglich und angemessen.

Hinweis: Verwenden Sie so wenige Methodenimplementierungen wie möglich; überlegen Sie, welche Methoden gemeinsam für mehrere Klassen implementiert werden können.