SE2 Blatt 03 Frage
2009-05-02 14:57
Anonymer User
Hallo liebe Kommilitoten. Ich habe da ein kleines Problem - weiss nur nicht ob es an der Syntax oder am Verständnis liegt.
Ich bin beim dritten Blatt Aufgabe 3.3 . Hier soll man ja in 3.3.1 die "spezifischen Informationen" von CD oder DVD in die TextArea einfügen. Jetzt ist es kein Problem das mit den Methoden bzw Operationen zu tun, die im Interface Medium definiert sind. Ich denke aber, dass man auch die nicht im Interface vorhandenen Methoden (wie z.B. gibInterpret() ) einbinden soll. Natürlich meldet mir der Compiler, dass die Methode gibInterpret nicht in Medium definiert ist. Deswegen habe ich versucht nochmal eine Typzusicherung in _ausgewaehlteMedienTextArea.append() reinzukriegen (davor steht natürlich schon eine), unten könnt ihr sehen wie ich das versucht habe. Wie erwartet funktioniert das so nicht.
Ich denke es ist gegen den Sinn der Aufgabe die fehlenden Methoden im Interface einzufügen, ich soll ja durch Typzusicherung von einem allgemeineren Typ einen spezielleren ansprechen. Oder verstehe ich das jetzt falsch?
Hier ein Beispielcode (nur mit CD)
Ich bin beim dritten Blatt Aufgabe 3.3 . Hier soll man ja in 3.3.1 die "spezifischen Informationen" von CD oder DVD in die TextArea einfügen. Jetzt ist es kein Problem das mit den Methoden bzw Operationen zu tun, die im Interface Medium definiert sind. Ich denke aber, dass man auch die nicht im Interface vorhandenen Methoden (wie z.B. gibInterpret() ) einbinden soll. Natürlich meldet mir der Compiler, dass die Methode gibInterpret nicht in Medium definiert ist. Deswegen habe ich versucht nochmal eine Typzusicherung in _ausgewaehlteMedienTextArea.append() reinzukriegen (davor steht natürlich schon eine), unten könnt ihr sehen wie ich das versucht habe. Wie erwartet funktioniert das so nicht.
Ich denke es ist gegen den Sinn der Aufgabe die fehlenden Methoden im Interface einzufügen, ich soll ja durch Typzusicherung von einem allgemeineren Typ einen spezielleren ansprechen. Oder verstehe ich das jetzt falsch?
Hier ein Beispielcode (nur mit CD)
for (Medium medium : selektierteMedien)
{
// Die folgende Zeile zeigt beispielhaft, wie man Text in die
// TextArea einfügt.
// _ausgewaehlteMedienTextArea.append("Einzufügender Text);
if(medium instanceof CD)
{
medium = (CD)medium;
_ausgewaehlteMedienTextArea.append(medium.gibMedienBezeichnung()+ "\r\n" + medium.gibTitel() + "\r\n" + medium.gibKommentar() + medium instanceof CD ? (CD)medium.gibInterpret(): "");
}
}