Senf Geschrieben 10. April 2011 Geschrieben 10. April 2011 (bearbeitet) Hallo ich versuche gerade n:m Beziehungen mit Hilfe von Assoziationsklassen herzustellen. Mein Projekt : Schule Ich arbeite mit BLUEJ Klasse der Schulklasse: public class SCHULKLASSE { private String name; private int Klassenzimmer; private String zweig; public SCHULKLASSE(String n) { name = n; } } Lehrerklasse: public class LEHRER { private int persnr; private String nachname; private String amtsbezeichung; public LEHRER(int nr ) { persnr= nr; } } Hilfsklasse der Assoziationsklasse(LEHRERKLASSE): public class LEHRERKLASSE { private SCHULKLASSE klasse; private LEHRER person; public LEHRERKLASSE(SCHULKLASSE kla, LEHRER per) { klasse=kla; person= per; } } Beziehung UNTERRICHTET: public class UNTERRICHTET { private LEHRERKLASSE[] klehrer; public UNTERRICHTET() { klehrer = new LEHRERKLASSE[100]; } public void Lehrer_zuordnen(SCHULKLASSE sklasse, LEHRER person){ klehrer= new LEHRERKLASSE(sklasse, person); } } Mein Problem ist Folgendes: Beim Übersetzen der Klasse UNTERRICHTET erscheint folgende Fehlermeldung in der Zeile " klehrer= new LEHRERKLASSE(sklasse, person);" incompatible types-found LEHRERKLASSE but expected LEHRERKLASSE[] Was hab ich falsch gemacht? Wie kann ich den Fehler beheben? Bearbeitet 10. April 2011 von Senf Zitieren
flashpixx Geschrieben 10. April 2011 Geschrieben 10. April 2011 Generell ein Tip: Halte Dich an die allgm gültige Notation, in der Klassen nicht Uppercase benannt werden. In Deiner Methode "Lehrer_zuordnen" weist Du klehrer ein neues Objekt einer (!) Lehrerklasse zu, da klehrer als Array deklariert ist, wird das nicht funktionieren. Entweder musst Du klehrer anders deklarieren und dann verwenden oder Du weist das neue Objekt einer entsprechenden Position des Arrays zu. Generell würde ich in diesem Fall davon abraten Arrays zu verwenden, da diese statisch sind. Schau Dir das Collectioninterface an (Collection (Java 2 Platform SE v1.4.2) ) Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.