DCV 2023 09/Uebung Objektorientierte Programmierung: Unterschied zwischen den Versionen
Drlue (Diskussion | Beiträge) K Drlue verschob die Seite DCV 2023 03 01/Uebung Objektorientierte Programmierung nach DCV 2023 09/Uebung Objektorientierte Programmierung, ohne dabei eine Weiterleitung anzulegen |
Gyula (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 1: | Zeile 1: | ||
{{TOC limit|4}} | {{TOC limit|4}} | ||
== OOP == | == OOP == | ||
==== Aufgabe | ==== Aufgabe 1) ==== | ||
Erstelle folgend die '''Klasse''' '''Person'''. Diese '''Klasse''' soll die '''Attribute''' '''Name''', '''Age''' und '''Gender''' besitzen (Name, Alter, Geschlecht). Für das '''Geschlecht''' ist ein '''enum''' zu erstellen (''female'', ''male'', ''divers''). | Erstelle folgend die '''Klasse''' '''Person'''. Diese '''Klasse''' soll die '''Attribute''' '''Name''', '''Age''' und '''Gender''' besitzen (Name, Alter, Geschlecht). Für das '''Geschlecht''' ist ein '''enum''' zu erstellen (''female'', ''male'', ''divers''). | ||
Erstelle '''getter''' und '''setter''' für alle '''Attribute'''. | Erstelle '''getter''' und '''setter''' für alle '''Attribute'''. | ||
Überschreibe weiters {{JSL| | Überschreibe weiters {{JSL|ToString()}} und erstelle einen {{JSL|string}} der alle relevanten Informationen enthält. | ||
Erstelle mindestens 6 verschiedene Person in der {{JSL| | Erstelle mindestens 6 verschiedene Person in der {{JSL|Aufgabe1_Main.Start()}} '''Methode''' und gib diese aus. | ||
==== Aufgabe | ==== Aufgabe 2) ==== | ||
Erstelle folgend die '''Klasse''' '''House'''. Ein Haus hat die '''Attribute''' '''Doors''', '''Windows''', '''Address''' (Türen, Fenster, Adresse) und eine {{JSL|List}} von '''Person'''. Verwende dafür die '''Person''' aus dem vorhergehenden Beispiel. Die '''Klasse''' '''House''' soll weiters die '''Methode''' {{JSL|addPerson(Person person)}} enthalten um Personen hinzuzufügen. Erstelle '''getter''' und '''setter''' für alle '''Attribute'''. | Erstelle folgend die '''Klasse''' '''House'''. Ein Haus hat die '''Attribute''' '''Doors''', '''Windows''', '''Address''' (Türen, Fenster, Adresse) und eine {{JSL|List}} von '''Person'''. Verwende dafür die '''Person''' aus dem vorhergehenden Beispiel. Die '''Klasse''' '''House''' soll weiters die '''Methode''' {{JSL|addPerson(Person person)}} enthalten um Personen hinzuzufügen. Erstelle '''getter''' und '''setter''' für alle '''Attribute'''. | ||
Überschreibe nun {{JSL| | Überschreibe nun {{JSL|ToString()}} und gib alle relevanten Informationen vom Haus zurück. Dazu gehören auch die Personen die darin leben (verwende {{JSL|ToString()}} von {{JSL|Person}}. | ||
Erstelle mindestens 3 verschiedene Häuser in der {{JSL| | Erstelle mindestens 3 verschiedene Häuser in der {{JSL|Aufgabe2_Main.Start()}} '''Methode''', füge einige Personen hinzu, und gib dann das Haus aus. | ||
==== Aufgabe | ==== Aufgabe 3) ==== | ||
Erstelle eine '''Klasse''' '''SortedHouse''' welche von {{JSL|House}} aus dem vorhergehenden Beispiel erbt. Überschreibe {{JSL|addPerson(Person person)}} und sortiere, nach dem '''Namen''', entweder die {{JSL|List}} nach dem Einfügen der {{JSL|Person}} oder füge diese direkt an der richtigen Stelle ein. | Erstelle eine '''Klasse''' '''SortedHouse''' welche von {{JSL|House}} aus dem vorhergehenden Beispiel erbt. Überschreibe {{JSL|addPerson(Person person)}} und sortiere, nach dem '''Namen''', entweder die {{JSL|List}} nach dem Einfügen der {{JSL|Person}} oder füge diese direkt an der richtigen Stelle ein. | ||
Erstelle mindestens 3 verschiedene Häuser in der {{JSL| | Erstelle mindestens 3 verschiedene Häuser in der {{JSL|JSL|Aufgabe3_Main.Start()}} '''Methode''', füge einige Personen hinzu, und gib dann das Haus aus. | ||
Version vom 22. November 2023, 09:03 Uhr
OOP
Aufgabe 1)
Erstelle folgend die Klasse Person. Diese Klasse soll die Attribute Name, Age und Gender besitzen (Name, Alter, Geschlecht). Für das Geschlecht ist ein enum zu erstellen (female, male, divers).
Erstelle getter und setter für alle Attribute.
Überschreibe weiters ToString() und erstelle einen string der alle relevanten Informationen enthält.
Erstelle mindestens 6 verschiedene Person in der Aufgabe1_Main.Start() Methode und gib diese aus.
Aufgabe 2)
Erstelle folgend die Klasse House. Ein Haus hat die Attribute Doors, Windows, Address (Türen, Fenster, Adresse) und eine List von Person. Verwende dafür die Person aus dem vorhergehenden Beispiel. Die Klasse House soll weiters die Methode addPerson(Person person) enthalten um Personen hinzuzufügen. Erstelle getter und setter für alle Attribute.
Überschreibe nun ToString() und gib alle relevanten Informationen vom Haus zurück. Dazu gehören auch die Personen die darin leben (verwende ToString() von Person.
Erstelle mindestens 3 verschiedene Häuser in der Aufgabe2_Main.Start() Methode, füge einige Personen hinzu, und gib dann das Haus aus.
Aufgabe 3)
Erstelle eine Klasse SortedHouse welche von House aus dem vorhergehenden Beispiel erbt. Überschreibe addPerson(Person person) und sortiere, nach dem Namen, entweder die List nach dem Einfügen der Person oder füge diese direkt an der richtigen Stelle ein.
Erstelle mindestens 3 verschiedene Häuser in der JSL Methode, füge einige Personen hinzu, und gib dann das Haus aus.