Klassen Ausgabe von Algorithmus in Verbindung mit einem Klassendiagramm

JuliaT

Mitglied
Bei der folgenden Klausuraufgabe bin ich mir ueber die Ausgabe des Algorithmus nicht ganz sicher.
Die Ausgabe soll in Verbindung mit dem UML-Klassendiagramm angegeben werden. Bin mir unsicher ob wenn dort z.B. eine 5 steht, welche zu der Variablen tueren gehoert, bei der Ausgabe 5tueren erscheinen wuerde oder wirklich nur 5. Und auch ob die ganzen Angaben durch ein Komma oder aehnliches getrennt werden oder in eins hintereinander weggeschrieben werden und lediglich beim Semikolon ein Absatz oder eine Luecke vorkommt.
Also glaube am wahrscheinlichsten finde ich momentan folgende Ausgabe:

Uboot9800
Harley-Davidson67true
Golf2205
Freelander1775true

Die zweite Frage der Aufgabe wuerde ich so beantworten (Und hier vielen dank an das Mitgield Bitfehler. Heute morgen wusste ich noch nicht mal das Oberklassen existieren):

Die Klasse Fahrzeug ist eine Oberklasse. Die anderen Klassen sind Auspraegungen dieser Oberklasse. Sie haben auch alle Attribute, die durch die Oberklasse bereits vorgegeben wurden. Sie erben also von der Klasse Fahrzeug. Die Klasse Gelaendewagen, ist hierbei noch der Klasse Auto untergeordnet und erbt somit von dieser. Durch das Erben erhaelt das erbende Objekt die Attribute und Methoden der Oberklasse, kann aber auch noch weitere enthalten.
Durch dieser Vererbung gelten alle Methoden der Klasse Fahrzeug auch fuer alle anderen Klassen.

IMG_6155 copy.jpg
 
X

Xyz1

Gast
Jetzt kommt Phorensik: Wieso ist die Klausur denn so komisch genickt? Hast du abfotografiert?
 

Joose

Top Contributor
Bin mir unsicher ob wenn dort z.B. eine 5 steht, welche zu der Variablen tueren gehoert, bei der Ausgabe 5tueren erscheinen wuerde oder wirklich nur 5. Und auch ob die ganzen Angaben durch ein Komma oder aehnliches getrennt werden oder in eins hintereinander weggeschrieben werden und lediglich beim Semikolon ein Absatz oder eine Luecke vorkommt.
Also glaube am wahrscheinlichsten finde ich momentan folgende Ausgabe:

Uboot9800
Harley-Davidson67true
Golf2205
Freelander1775true

Im Klassen Diagramm steht genau drinnen (als Kommentar) wie die Methode "alsZeichenkette()" bzw. "gibDaten()" implementiert ist. Deine Annahme ist falsch.

Die zweite Frage der Aufgabe wuerde ich so beantworten (Und hier vielen dank an das Mitgield Bitfehler. Heute morgen wusste ich noch nicht mal das Oberklassen existieren):

Korrekt, einzig die Formulierung "erhält das erbende Objekt" durch "erhält die erbende Klasse" ersetzen.
 

JuliaT

Mitglied
Okay, habe mir das nochmal angesehen.

Es ist als String definiert und dazu habe ich etwas zu verketteten Strings durchgelesen. Strings koennen keine Zahlen enthalten, daher ist da ja schonmal der erste Fehler in meiner Loesung. Auch werden die Sachen komplett hintereinander weggeschrieben.
Auch habe ich die Kommentare vorher nicht einbezogen.
Meine Loesung habe ich dementsprechend nochmal ueberarbeitet:

UbootHarley-Davidson-mit BeiwagenGolfFreelanderhatAllrad
 

JCODA

Top Contributor
Es ist als String definiert und dazu habe ich etwas zu verketteten Strings durchgelesen. Strings koennen keine Zahlen enthalten, ...
Das ist falsch. Strings können Zahlen enthalten und zwar als "Zeichen" d.h. man kann dann nicht damit rechnen. Also, ich versuch dir mal auf die Sprünge zu helfen.

in alleFahrzeuge[0] ist ein Fahrzeug vom Typ Fahrzeug drin. Die "Bezeichnung" und PS werden im Konstruktor übergeben nämlich Uboot und 98000.
in der Methode "alsZeichenkette()" wird "gibDaten()" aufgerufen diese verknüpft die Bezeichnung mit "Klammer auf",der PS-Anzahl,der Zeichenkette "PS" und "Klammer zu".
Also lautet die erste Ausgabe Uboot (98000PS)
Bei alleFahrzeuge[1] muss man nun aufpassen. Hier ist ein Fahrzeug vom Typ Motorrad drin. d.h. wir müssen uns die Methode "alsZeichenkette" von Motorrad anschauen.
Diese wird hier aber nicht überschrieben, d.h. sie wird geerbt und es passiert das gleiche wie in Fahrzeug, d.h. "gibDaten()" wird aufgerufen. Okay, also schauen wir und "gibDaten()" von Motorrad an. Wie lautet nun die Ausgabe?
 

JuliaT

Mitglied
Vielen dank fuer die Tipps.

Neuer Versuch :) :

Uboot(9800PS)Harley-Davidson(67PS)-mit BeiwagenGolf(226PS)5TuerenFreelander(177PS)
 

Neue Themen


Oben