Java programmieren |
11.05.2013, 17:06 | Auf diesen Beitrag antworten » | ||||||||||
java25 | Java programmieren Meine Frage: Hallo leute ich habe gerade probleme bei einer Aufgabe: Als Vorlage habe ich das bekommen:
Nun Aufgabenstellung: Ausgangspunkt für diese Aufgabe ist eine modifizierte Musterlösung . Die abstrakte Oberklasse ZeichenbaresObjekt wurde in ZeichenbareFigur geändert, die das Interface GeometrischeFigur implementiert. Die Unterklassen (Kreis, Polygon etc.) müssen nun nicht mehr explizit das Interface implementieren. Ziel ist es, Sammlungen von zeichenbaren geometrischen Figuren zu verwalten. a) Schreiben Sie dazu die Klasse FigurSammlung. Der Konstruktor soll keine Parameter erwarten und ein geeignetes Collection-Datenfeld für die zu verwaltenden ZeichenbareFigur-Objekte initialisieren. b) Die Methode public void hinzu(ZeichenbareFigur f) soll der Sammlung eine neue Figur hinzufügen. c) Die Methode public void zeichne() soll alle Figuren der Sammlung zeichnen. d) Schreiben Sie die Methode public double gibFlaeche(), die einfach die Summe der Einzelflächen zurückgibt (Sie brauchen hier also nicht auf Überlappungen zwischen den einzelnen Figuren zu achten!). e) Implementieren Sie auch die Methode public Punkt gibSchwerpunkt(). Erstellen Sie ein neues (Hilfs-)Polygon aus den Schwerpunkten der einzelnen Figuren und geben Sie dessen Schwerpunkt als Ergebnis zurück. Hinweis: Das Ergebnis dieser Methode ist nicht der tatsächliche Schwerpunkt der Figurensammlung. Diesen zu bestimmen ist nicht trivial, dazu müssten die einzelnen Figuren z. B. gewichtet nach ihrer Fläche in die Berechnung eingehen. f) Die Methode public void rotiereFarben() soll die Farben der Figuren so rotieren, dass jede Figur die Farbe der nächsten Figur der Sammlung erhält (die letzte Figur soll die ehemalige Farbe 1 der ersten Figur erhalten). Wenn die Figuren der Sammlung also die Farben rot, grün, blau und gelb haben, sollen die nach dem Aufruf der Methode die Farben grün, blau, gelb und rot haben. Mein Ansatz sieht so aus:
Habe ich so das collection datenfeld initialisiert im Konstruktor ? Meine Ideen: gepostet |
||||||||||
|
|||||||||||
11.05.2013, 19:06 | Auf diesen Beitrag antworten » | ||||||||||
Airblader | Nein – und schon jetzt lehne ich mich aus dem Fenster und gebe dir den Rat: Fange nicht mit dieser Aufgabe an, sie ist zu fortgeschritten für dich. Du solltest nochmal einige Grundlagen wiederholen, z.B. wie man Klassenvariablen deklariert und initialisiert. Die Collection muss eine Variable werden, die im Groben sowas macht wie "farbe" in der Oberklasse, also
|
||||||||||
11.05.2013, 19:28 | Auf diesen Beitrag antworten » | ||||||||||
java25 |
Könnte ich das so machen ? Ich versuche halt langsam programmieren zu lernen. |
||||||||||
11.05.2013, 19:31 | Auf diesen Beitrag antworten » | ||||||||||
Airblader | Darf ich fragen, was du zum Programmieren nutzt? Jetzt hast du nämlich ganz klare Syntax-Fehler, die jede IDE dir eigentlich anzeigen sollte. Wenn du bisher keine verwendest, wird es höchste Zeit, dir eine zuzulegen. Langsam programmieren lernen ist eine super Sache – aber du versuchst dich an einer Aufgabe, die ganz offenbar weit über deinem Niveau ist. Bitte springe nochmal ein paar Lektionen zurück zu den Grundlagen über Variablen in Java. Wir werden hier sonst nicht vorankommen. |
||||||||||
Anzeige | |||||||||||
|
|||||||||||
11.05.2013, 19:38 | Auf diesen Beitrag antworten » | ||||||||||
java25 | ich benutze eclipse . Kannst du mir nicht sagen wo genau der fehler liegt ? Oder kannst du mir eine bessere ide empfehlen? |
||||||||||
11.05.2013, 19:41 | Auf diesen Beitrag antworten » | ||||||||||
Airblader | Nein, Eclipse ist super! Aber Eclipse sollte dir definitiv Fehler für den obigen Code anzeigen. Zum Beispiel, dass du die Variable einmal "elems" und einmal "elem" nennst. |
||||||||||
11.05.2013, 19:55 | Auf diesen Beitrag antworten » | ||||||||||
java25 | Ich habs so gemacht. Aber es funzt trotzdem net . In welcher Zeile liegt den der Fehler? import java.util.Collection;
|
||||||||||
11.05.2013, 20:12 | Auf diesen Beitrag antworten » | ||||||||||
Airblader | Ich frage nochmal: Zeigt dir Eclipse denn keine Fehler an? Du dürftest das eigentlich nichtmal kompilieren können! Ich gehe jetzt nochmal auf ein paar Fehler ein, aber dann mache ich hier Schluss. Ich hatte vorhin schon gesagt: Fange mit den Grundlagen an, das hier ist zu fortgeschritten. Es gibt viele gute Bücher zu Java, mit denen du dir sowas beibringen kannst.
Wenn dir Eclipse hier nicht nahezu alles rot markiert hat, dann stimmt irgendwas nicht. |
||||||||||
11.05.2013, 20:17 | Auf diesen Beitrag antworten » | ||||||||||
java25 | import java.util.Collection; public static void main(String[] args){ } public class FigurSammlung { private final Collection<ZeichenbareFigur> elems; public FigurSammlung(){ elems = new LinkedCollection<ZeichenbareFigur>(); } } Das funktioniert immer noch nicht. Ja eclipse zeigt mir fehler an , aber es sagt mir auch das keine main existiert , daher hatte ich das public static.... angefügt. Was soll ich sonst machen? |
||||||||||
12.05.2013, 12:31 | Auf diesen Beitrag antworten » | ||||||||||
java25 | Leute was mache ich denn nur falsch? |
|
Verwandte Themen
Die Beliebtesten » |
Die Größten » |
|
Die Neuesten » |