# Abstrakte Klassen [Musterlösung](solution/) ## Lernziel Eine abstrakte Klasse einsetzen, um eine einheitliche Schnittstelle für unterschiedliche Klassen anzubieten. ## Aufgabe Im Paket [pr2.interfaces.abstrakte_klassen_e](../sources/src/main/java/pr2/interfaces/abstrakte_klassen_e/) finden Sie Klassen, welche geometrische Figuren repräsentieren. Betrachten Sie die vorhandenen Klassen `Dreieck`, `Kreis` und `Geometer` und finden Sie Gemeinsamkeiten und Unterschiede. Lassen Sie das Programm laufen und notieren Sie sich die Ausgabe. Führen Sie eine neue _abstrakte_ Klasse `Figur` ein und vereinfachen Sie mit dieser Klasse das vorhandene Programm. Lassen Sie das Programm erneut laufen und vergleichen Sie die Ausgabe mit der vorher notierten. ## Abgabe (optional) __Sie müssen keine Lösung für diese Aufgabe einreichen.__ Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor: 1. Öffnen Sie eine Kommandozeile (Terminal). 2. Gehen Sie in Ihr Working Directory. 3. Wechseln Sie mit `cd` in das Verzeichnis `sources`. 4. Bauen Sie das Projekt mit dem Kommando `mvn`.