From 1f9beb9004cd558b9070d06f9c717a3dc931c5f5 Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Wed, 12 Apr 2023 12:21:35 +0200 Subject: add the exercise test created for our seminar --- Info/10/2/Aufgaben/Uebungs_LN_FS.md | 58 +++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 Info/10/2/Aufgaben/Uebungs_LN_FS.md diff --git a/Info/10/2/Aufgaben/Uebungs_LN_FS.md b/Info/10/2/Aufgaben/Uebungs_LN_FS.md new file mode 100644 index 00000000..d06d791e --- /dev/null +++ b/Info/10/2/Aufgaben/Uebungs_LN_FS.md @@ -0,0 +1,58 @@ +## Aufgabe1: Referenzvariablen + +Die Verwaltung der Schule soll digitalisiert werden. +Bei der Modellierung der Schülerakten soll die Klasse `SCHUELER` ein Kind des HSG mit Namen repräsentieren und die Klasse `SCHUELERAKTE` enthält die wichtigen Informationen wie Notenschnitt, Hinweise sowie Verweise. + +### a) 4BE +Zeichne das Klassendiagramm der Klasse `SCHUELER` und `SCHUELERAKTE` mit ihren Attributen sowie deren Beziehung. +Mögliche Methoden können vernachlässigt werden. + +### b) 3BE +Ergänze die Klasse `SCHUELER` um eine Referenz auf die `SCHUELERAKTE`, erzeuge ein neues `SCHUELERAKTE` Objekt und ergänze die Methode `AkteAusgeben` um Ausgaben der Attribute von `SCHUELERAKTE`. + +```java +public class SCHUELER { + private String name; + // TODO: Deklariere eine Referenzvariable fuer die Schuelerakte + + + public SCHUELER(String neuerName, double neuerSchnitt) { + name = neuerName; + // TODO: Erzeuge ein neues Schuelerakte Objekt + } + + public void AkteAusgeben() { + System.out.println(name); + // TODO: Gib die Attribute der Akte des Schuelers aus + } +} +``` + +\newpage + +## Aufgabe2: Datenkapselung + +### a) 4 BE +Beschreibe in eigenen Worten den Grundsatz der Datenkapselung und wie er in der Programmiersprache Java umgesetzt werden kann. + +### b) 3 BE +Nenne drei Stellen an denen in der Klasse `BANKKONTO` der Grundsatz der Datenkapselung nicht umgesetzt wurde. + +```java +public class BANKKONTO { + public double kontostand; + public String kunde; + private String kontoAuszug; + + public BANKKONTO(String neuerKunde) { + kunde = neuerKunde; + kontostand = 0; + kontoAuszug = ""; + } + + private void KontostandAusgeben() { + System.out.println("Kunde " + kunde + " hat " + + kontostand + "Euro auf seinem Konto"); + } +} +``` -- cgit v1.2.3