From dce26e9170000b6ed67d7e97b06747f8b19371f2 Mon Sep 17 00:00:00 2001 From: Aminos061 <121253097+Aminos061@users.noreply.github.com> Date: Sat, 20 Apr 2024 14:18:44 +0200 Subject: [PATCH] merge Laptop Files --- .project | 11 ++ PR2_UIB/.classpath | 6 ++ .../Lernen/DemoXMLDeserialisierung.java | 20 ++++ .../Lernen/DemoXMLSerialisierung.java | 19 ++++ .../Lernen/ObjectInputOutputStreamEx.java | 27 +++++ PR2_UIB/Exercises/Lernen/Person.java | 39 +++++++ .../StringsmitFileInputOutputStreams.java | 40 +++++++ PR2_UIB/Exercises/Lernen/Test.java | 23 ++++ .../Testat1/Tutor_Aufgaben/Aufgabenstellungen | 25 +++++ .../Testat1/Tutor_Aufgaben/Clone/Alien.java | 102 ++++++++++++++++++ .../Tutor_Aufgaben/Clone/AlienCloneTest.java | 37 +++++++ .../Tutor_Aufgaben/Clone/Raumanzug.java | 84 +++++++++++++++ .../DoubleFormatter/DoubleFormatter.java | 22 ++++ .../Testat1/Tutor_Aufgaben/Mondnacht.txt | 6 ++ .../Tutor_Aufgaben/Serialisierung/Main.java | 47 ++++++++ .../Serialisierung/Product.java | 45 ++++++++ .../Uebung1_Vererbung/Aufgabestellung_Uebung1 | 23 ++++ .../verwaltung/kunden/Adresse.java | 15 +++ .../verwaltung/kunden/Geschaeftskunde.java | 21 ++++ .../verwaltung/kunden/Kunde.java | 34 ++++++ .../verwaltung/kunden/Main.java | 60 +++++++++++ .../verwaltung/kunden/Privatkunde.java | 14 +++ .../Uebung2_IO/Aufgabestellung_Uebung2_IO | 11 ++ .../Uebung2_IO/Indexverwaltung/Datei.java | 80 ++++++++++++++ .../Uebung2_IO/Indexverwaltung/Index.java | 101 +++++++++++++++++ .../Uebung2_IO/Indexverwaltung/IndexUI.java | 95 ++++++++++++++++ .../InvalidIndexException.java | 17 +++ .../Uebung2_IO/loesung2/Console.java | 32 ++++++ .../Uebung2_IO/loesung2/ConsoleTest.java | 46 ++++++++ .../Uebung2_IO/loesung2/DemoConsole.java | 21 ++++ .../Uebung2_IO/loesung3/Unterzaehler.java | 24 +++++ .../Uebung2_IO/loesung3/Verbraucher.java | 18 ++++ .../Uebung2_IO/loesung3/Zaehler.java | 39 +++++++ .../Uebung2_IO/loesung3/ZaehlerUI.java | 51 +++++++++ .../loesung3/Zaehler_Klassendigramm.webp | Bin 0 -> 177968 bytes .../Uebung3_Buchungen/Buchung.java | 34 ++++++ .../Uebung3_Buchungen/BuchungenAufgabe.java | 65 +++++++++++ .../Uebung3_Buchungen/Reader.java | 63 +++++++++++ PR2_UIB/buchungen.text | 7 ++ PR2_UIB/src/test.txt | 1 + 40 files changed, 1425 insertions(+) create mode 100644 .project create mode 100644 PR2_UIB/Exercises/Lernen/DemoXMLDeserialisierung.java create mode 100644 PR2_UIB/Exercises/Lernen/DemoXMLSerialisierung.java create mode 100644 PR2_UIB/Exercises/Lernen/ObjectInputOutputStreamEx.java create mode 100644 PR2_UIB/Exercises/Lernen/Person.java create mode 100644 PR2_UIB/Exercises/Lernen/StringsmitFileInputOutputStreams.java create mode 100644 PR2_UIB/Exercises/Lernen/Test.java create mode 100644 PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Aufgabenstellungen create mode 100644 PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/Alien.java create mode 100644 PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/AlienCloneTest.java create mode 100644 PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/Raumanzug.java create mode 100644 PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/DoubleFormatter/DoubleFormatter.java create mode 100644 PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Mondnacht.txt create mode 100644 PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Main.java create mode 100644 PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Product.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/Aufgabestellung_Uebung1 create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Adresse.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Geschaeftskunde.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Kunde.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Main.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Privatkunde.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/Aufgabestellung_Uebung2_IO create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/Datei.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/Index.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/IndexUI.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/InvalidIndexException.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/Console.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/ConsoleTest.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/DemoConsole.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Unterzaehler.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Verbraucher.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Zaehler.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/ZaehlerUI.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Zaehler_Klassendigramm.webp create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/Buchung.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/BuchungenAufgabe.java create mode 100644 PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/Reader.java create mode 100644 PR2_UIB/buchungen.text create mode 100644 PR2_UIB/src/test.txt diff --git a/.project b/.project new file mode 100644 index 0000000..bc765ee --- /dev/null +++ b/.project @@ -0,0 +1,11 @@ + + + PR2 + + + + + + + + diff --git a/PR2_UIB/.classpath b/PR2_UIB/.classpath index 655aa55..c07c2e8 100644 --- a/PR2_UIB/.classpath +++ b/PR2_UIB/.classpath @@ -2,10 +2,16 @@ + + + + + + diff --git a/PR2_UIB/Exercises/Lernen/DemoXMLDeserialisierung.java b/PR2_UIB/Exercises/Lernen/DemoXMLDeserialisierung.java new file mode 100644 index 0000000..1a6abf3 --- /dev/null +++ b/PR2_UIB/Exercises/Lernen/DemoXMLDeserialisierung.java @@ -0,0 +1,20 @@ +package Lernen; + +import java.beans.XMLDecoder; +import java.io.FileInputStream; +import java.io.IOException; + +public class DemoXMLDeserialisierung { + + public static void main(String[] args) { + String filename = "Beispiel.xml"; // Corrected the filename + + // Deserialize + try (XMLDecoder dec = new XMLDecoder(new FileInputStream(filename))) { + Person wiedereinePerson = (Person) dec.readObject(); + System.out.println(wiedereinePerson.getName() + " " + wiedereinePerson.getVorname() + " " + wiedereinePerson.getAlter()); + } catch (IOException e) { + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/PR2_UIB/Exercises/Lernen/DemoXMLSerialisierung.java b/PR2_UIB/Exercises/Lernen/DemoXMLSerialisierung.java new file mode 100644 index 0000000..663317c --- /dev/null +++ b/PR2_UIB/Exercises/Lernen/DemoXMLSerialisierung.java @@ -0,0 +1,19 @@ +package Lernen; + +import java.io.*; +import java.beans.*; + +public class DemoXMLSerialisierung { + + public static void main(String[] args) { + Person einePerson = new Person("Mustermann", "Harald", 38); + String filename = "Beispiel.xml"; // Corrected the filename + + // Serialize + try (XMLEncoder enc = new XMLEncoder(new FileOutputStream(filename))) { + enc.writeObject(einePerson); + } catch (IOException e) { + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/PR2_UIB/Exercises/Lernen/ObjectInputOutputStreamEx.java b/PR2_UIB/Exercises/Lernen/ObjectInputOutputStreamEx.java new file mode 100644 index 0000000..23a3457 --- /dev/null +++ b/PR2_UIB/Exercises/Lernen/ObjectInputOutputStreamEx.java @@ -0,0 +1,27 @@ +package Lernen; + +import java.beans.XMLEncoder; +import java.io.FileOutputStream; +import java.io.IOException; + +import Testat1.Tutor_Aufgaben.Clone.Alien; +import Testat1.Tutor_Aufgaben.Clone.Raumanzug; + +public class ObjectInputOutputStreamEx { + + public static void main(String[] args) { + String DateiName = "test1.txt"; + Alien a1 = new Alien ("sfei", new Raumanzug()); + Alien a2 = a1; + Raumanzug r1 = a1.getAnzug(); + + try (XMLEncoder output = new XMLEncoder(new FileOutputStream(DateiName))){ + output.writeObject(a1); + + + } catch (IOException e) { + e.printStackTrace(); + } + } + +} diff --git a/PR2_UIB/Exercises/Lernen/Person.java b/PR2_UIB/Exercises/Lernen/Person.java new file mode 100644 index 0000000..f33ff29 --- /dev/null +++ b/PR2_UIB/Exercises/Lernen/Person.java @@ -0,0 +1,39 @@ +package Lernen; + +public class Person { + private String name; + private String vorname; + private int alter; + + public Person() {} + + public Person(String name, String vorname, int alter) { + this.name = name; + this.vorname = vorname; + this.alter = alter; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getVorname() { + return vorname; + } + + public void setVorname(String vorname) { + this.vorname = vorname; + } + + public int getAlter() { + return alter; + } + + public void setAlter(int alter) { + this.alter = alter; + } +} diff --git a/PR2_UIB/Exercises/Lernen/StringsmitFileInputOutputStreams.java b/PR2_UIB/Exercises/Lernen/StringsmitFileInputOutputStreams.java new file mode 100644 index 0000000..2f3a67f --- /dev/null +++ b/PR2_UIB/Exercises/Lernen/StringsmitFileInputOutputStreams.java @@ -0,0 +1,40 @@ +package Lernen; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.io.PrintWriter; + +public class StringsmitFileInputOutputStreams { + + + public static void main(String[] args) { + int e = 2; + double d = 2.4; + String dateiName = "src/test.txt"; + String data = null; + + try (BufferedReader input = new BufferedReader(new InputStreamReader(System.in))){ + data = input.readLine(); + } catch (Exception x) { + x.printStackTrace(); + } + + try (PrintWriter input = new PrintWriter(dateiName)){ + String xy = null; + xy += (data + d )+ e; + input.write(xy); +// input.println(d); +// input.println(e); + + } catch (Exception x) { + x.printStackTrace(); + } + } + +} diff --git a/PR2_UIB/Exercises/Lernen/Test.java b/PR2_UIB/Exercises/Lernen/Test.java new file mode 100644 index 0000000..85552cf --- /dev/null +++ b/PR2_UIB/Exercises/Lernen/Test.java @@ -0,0 +1,23 @@ +package Lernen; + +import Testat1.Tutor_Aufgaben.Clone.Alien; +import Testat1.Tutor_Aufgaben.Clone.Raumanzug; + +public class Test { + + public static void main(String[] args) throws CloneNotSupportedException { + Alien a1 = new Alien("Sirat", new Raumanzug()); + Raumanzug r = a1.getAnzug(); + r.auftanken(); + System.out.println(r); + System.out.println(a1.toString()); + + Alien a2 = a1.clone(); + Raumanzug r2 = a2.getAnzug(); + r2.setSauerstoffVorrat(2); + System.out.println(a2.getAnzug()); + System.out.println(r); + System.out.println(a2.toString()); + + } +} diff --git a/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Aufgabenstellungen b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Aufgabenstellungen new file mode 100644 index 0000000..57fc806 --- /dev/null +++ b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Aufgabenstellungen @@ -0,0 +1,25 @@ +Programmieren 2 Übungsstunde 15.04 Input/Output Grundlagen + +1. DoubleFormatter +Implementiere eine Methode printDouble, +die eine Dezimalzahl entgegennimmt und sie auf eine bestimmte Anzahl von Nachkommastellen gerundet ausgibt. +Die Methode soll keine printf-Anweisung verwenden, sondern den gerundeten Wert selbst berechnen und ausgeben. + +2. Clone: +fügen Sie der Klasse Alien eine clone()-Methode hinzu, +die eine tiefe Kopie der Objekte anlegt. +Hierzu müssen Sie auch Raumanzug mit einer clone()-Methode ausstatten. +Testen Sie, ob Ihre Implementierung korrekt funktioniert, indem Sie die vorhandenen Testfälle ausführen. +Damit die Tests laufen können, müssen Sie die Kommentarzeichen entfernen. + +3. BufferedWriter/Reader: +Schreiben Sie die Datei Mondnacht.txt per BufferedWriter in Java und Lesen Sie die Datei Mondnacht.txt zeilenweise ein und geben +Sie die Zeilen mit einer fortlaufenden Zeilennummer wieder aus. +Dazu soll noch die Anzahl der Wörter, Buchstaben und Zeilen am Ende ausgegeben werden. Verwenden Sie hierzu einen BufferedReader. + +4. Serialisierung: +Serialisieren Sie die Klasse Produkt und testen Sie ob die Serialisierung funktioniert hat. + +5. Bonus: +Implementieren Sie eine Methode convertDate, die ein Datum im Format "dd.MM.yyyy" entgegennimmt und es in das Format "yyyy-MM-dd" konvertiert. +Die Methode soll einen String zurückgeben, der das konvertierte Datum darstellt. diff --git a/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/Alien.java b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/Alien.java new file mode 100644 index 0000000..632973d --- /dev/null +++ b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/Alien.java @@ -0,0 +1,102 @@ +package Testat1.Tutor_Aufgaben.Clone; + +import java.io.Serializable; + +/** + * Ein Alien. + */ + public class Alien implements Cloneable, Serializable{ + + /** + * Name des Aliens. + */ + private final String name; + + /** + * Raumanzug des Aliens. + */ + private Raumanzug raumanzug; + + /** + * Erzeugt ein neues Alien. + * + * @param name Name des Aliens. + * @param raumanzug Anzug. + */ + public Alien(String name, Raumanzug raumanzug) { + this.name = name; + this.raumanzug = raumanzug; + } + + /** + * Gibt den Namen des Aliens zurück. + * + * @return Name des Aliens. + */ + public String getName() { + return name; + } + + /** + * Gibt den Anzug zurück. + * + * @return der Anzug. + */ + public Raumanzug getAnzug() { + return raumanzug; + } + + /** + * @see java.lang.Object#hashCode() + */ + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((name == null) ? 0 : name.hashCode()); + result = prime * result + ((raumanzug + == null) ? 0 : raumanzug.hashCode()); + return result; + } + + /** + * @see java.lang.Object#equals(java.lang.Object) + */ + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + Alien other = (Alien) obj; + if (name == null) { + if (other.name != null) { + return false; + } + } + else if (!name.equals(other.name)) { + return false; + } + if (raumanzug == null) { + return other.raumanzug == null; + } + else { + return raumanzug.equals(other.raumanzug); + } + } +// public Alien clone() throws CloneNotSupportedException{ +// Alien a = (Alien) super.clone(); +// return a; +// } + public Alien clone() throws CloneNotSupportedException { + Alien a = (Alien) super.clone(); + a.raumanzug = this.raumanzug.clone(); + return a; + } + +} diff --git a/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/AlienCloneTest.java b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/AlienCloneTest.java new file mode 100644 index 0000000..73a6158 --- /dev/null +++ b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/AlienCloneTest.java @@ -0,0 +1,37 @@ +package Testat1.Tutor_Aufgaben.Clone; + + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotSame; + +import org.junit.jupiter.api.Test; + +/** + * Test für die Clone-Methoden. + */ +public class AlienCloneTest { + + /** + * Test-Methode. + * + * @throws CloneNotSupportedException wird geworfen, wenn clone_alien + * nicht korrekt implementiert wurde. + */ + @Test + void testClone() throws CloneNotSupportedException { +// TODO: Einkommentieren (strg+shift+c) + Raumanzug r1 = new Raumanzug(); + Alien a1 = new Alien("Predator", r1); + + Alien a2 = (Alien) a1.clone(); + Raumanzug r2 = a2.getAnzug(); + + assertNotSame(a1, a2); + assertNotSame(r1, r2); + + assertEquals(a1, a2); + assertEquals(r1, r2); + assertEquals(r1.getSauerstoffVorrat(), r2.getSauerstoffVorrat(), + 0.0001); + } +} diff --git a/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/Raumanzug.java b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/Raumanzug.java new file mode 100644 index 0000000..60720b7 --- /dev/null +++ b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Clone/Raumanzug.java @@ -0,0 +1,84 @@ +package Testat1.Tutor_Aufgaben.Clone; + +import java.io.Serializable; + +/** + * Ein Raumanzug. + */ + public class Raumanzug implements Cloneable, Serializable{ + + /** + * Sauerstoffvorrat, der noch im Raumanzug ist. + */ + private double sauerstoffVorrat; + + /** + * Ertzeugt einen neuen Raumanzug. + */ + public Raumanzug() { + sauerstoffVorrat = Math.random(); + } + + /** + * Sauerstoffvorrat im Anzug. + * + * @return Vorrat in % (0.0-1.0) + */ + public double getSauerstoffVorrat() { + return sauerstoffVorrat; + } + + /** + * Tankt den Anzug auf. + */ + public void auftanken() { + sauerstoffVorrat = 1.0; + } + + public void setSauerstoffVorrat(double sauerstoffVorrat) { + this.sauerstoffVorrat = sauerstoffVorrat; + } + + /** + * @see java.lang.Object#hashCode() + */ + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + long temp; + temp = Double.doubleToLongBits(sauerstoffVorrat); + result = prime * result + (int) (temp ^ (temp >>> 32)); + return result; + } + + /** + * @see java.lang.Object#equals(java.lang.Object) + */ + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + Raumanzug other = (Raumanzug) obj; + return Double.doubleToLongBits(sauerstoffVorrat) + == Double.doubleToLongBits(other.sauerstoffVorrat); + } + public Raumanzug clone() throws CloneNotSupportedException { + Raumanzug r = (Raumanzug) super.clone(); + return r; + } + + @Override + public String toString() { + return "Raumanzug [sauerstoffVorrat=" + sauerstoffVorrat + "]"; + } + +} + diff --git a/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/DoubleFormatter/DoubleFormatter.java b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/DoubleFormatter/DoubleFormatter.java new file mode 100644 index 0000000..b26c80c --- /dev/null +++ b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/DoubleFormatter/DoubleFormatter.java @@ -0,0 +1,22 @@ +package Testat1.Tutor_Aufgaben.DoubleFormatter; + + +public class DoubleFormatter { + + + public static void printDouble(double zahl, int nachkommastellen) { + double multi = Math.pow(10, nachkommastellen); + double ergebnis = Math.round(zahl * multi)/multi; + System.out.println(ergebnis); + } + public static void main(String[] args) { + printDouble(1.0, 1); // Erwartete Ausgabe: 1.0 + printDouble(10.1, 1); // Erwartete Ausgabe: 10.1 + printDouble(2.01, 2); // Erwartete Ausgabe: 2.01 + printDouble(2.006, 2); // Erwartete Ausgabe: 2.01 + printDouble(2.0001, 2); // Erwartete Ausgabe: 2.00 + printDouble(2.0005, 3); // Erwartete Ausgabe: 2.001 + printDouble(123.456, 1); // Erwartete Ausgabe: 123.4 + printDouble(9876.54321, 3); // Erwartete Ausgabe: 9876.543 + } +} diff --git a/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Mondnacht.txt b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Mondnacht.txt new file mode 100644 index 0000000..2c03b8d --- /dev/null +++ b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Mondnacht.txt @@ -0,0 +1,6 @@ +Mondnacht +Es war, als hätt' der Himmel +Die Erde still geküsst, +Dass sie im Blütenschimmer +Von ihm nun träumen müsst. + diff --git a/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Main.java b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Main.java new file mode 100644 index 0000000..9b669cd --- /dev/null +++ b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Main.java @@ -0,0 +1,47 @@ +package Testat1.Tutor_Aufgaben.Serialisierung; + +import java.beans.XMLDecoder; +import java.beans.XMLEncoder; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; + +public class Main { + public static void main(String[] args) { + // Erstelle ein Produkt + Product product = new Product("Handy", "ruft an", 299.99); + + // Dateiname für die Serialisierung + String dateiname = "serializedProduct.xml"; + + // Serialisierung + Main.serialize(product, dateiname); + + // Deserialisierung und Ausgabe + Product decodedProduct = Main.deserialize(product, dateiname); + System.out.printf("Name: %s\nDes: %s\nPrice: %s", decodedProduct.getName(),decodedProduct.getDescription(),decodedProduct.getPrice()); + } + + // Methode zur Serialisierung eines Produkts + public static void serialize (Product product, String dateiname) { + try (XMLEncoder encoder = new XMLEncoder(new FileOutputStream(dateiname))){ + encoder.writeObject(product); + } catch (IOException e) { + e.printStackTrace(); + } + } + + + // Methode zur Deserialisierung eines Produkts + public static Product deserialize (Product product, String dateiname) { + Product decodedProduct = null; + try (XMLDecoder decoder = new XMLDecoder(new FileInputStream(dateiname))){ + decodedProduct = (Product) decoder.readObject(); + + } catch (Exception e) { + e.printStackTrace(); + } + return decodedProduct; + } +} + diff --git a/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Product.java b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Product.java new file mode 100644 index 0000000..57e39cd --- /dev/null +++ b/PR2_UIB/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Product.java @@ -0,0 +1,45 @@ +package Testat1.Tutor_Aufgaben.Serialisierung; + +import java.io.Serializable; + +public class Product implements Serializable { + /** + * + */ + private static final long serialVersionUID = 1L; + private String name; + private String description; + private double price; + + public Product() {} + + public Product(String name, String description, double price) { + this.name = name; + this.description = description; + this.price = price; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public double getPrice() { + return price; + } + + public void setPrice(double price) { + this.price = price; + } +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/Aufgabestellung_Uebung1 b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/Aufgabestellung_Uebung1 new file mode 100644 index 0000000..01d6067 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/Aufgabestellung_Uebung1 @@ -0,0 +1,23 @@ +Übung 1 +In dieser Übung soll ein fiktives Bankverwaltungssystem implementiert werden. +Die Bank möchte dabei zwischen Geschäfts- und Privatkunden unterscheiden: + ++ Erstellen Sie ein Java-Programm mit folgenden Klassen: + - Kunde als Oberklasse + - Geschäfts- und Privatkunde als abgeleitete Unterklassen + - Definieren sie dafür das package "verwaltung.kunden" + ++ Definieren Sie für jede Klasse zwei bis drei sinnvolle Attribute und Methoden. + - Erstellen Sie Konstruktoren für alle Klassen und achten Sie implementieren diese so, dass sie super() verwenden können + - Begründen Sie die Zugrrifsrechte zu jedes Attributes und jeder Methode mit Hilfe von Quelltext-Kommentare + - Dokumentierte Sie die Methoden mit Hilfe des Javadoc-Formats + - Erzeugen Sie in der Klasse Auftrag eine Klassenvariable Auftragsnummer. + Können Sie darauf zugreifen, ohne ein Objekt erzeugt zu haben? + ++ Gibt es Unterschiede und wenn ja, führen diese zu einer Revision ihres Quelltexts? + ++ Finden Sie heraus, wie Adressen von Variablen in Java ausgegeben werden können. +Erzeugen Sie skalare und zusammengesetzte Datentypen (also Objekte) und lassen Sie sich deren Adressen ausgeben. +Als zusammengesetzten Datentyp deklarieren Sie eine Adress-Klasse (Name, Straße, PLZ, Wohnort) assoziieren dies mit der Kunden-Klasse. + ++ Greifen Sie nun auf skalare und zusammengesetzte Attribute für das obige Beispiel zu und prüfen Sie mit Hilfe der Adressaufgabe, ob eine Kopie oder die Referenz übergeben wurde. \ No newline at end of file diff --git a/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Adresse.java b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Adresse.java new file mode 100644 index 0000000..e492a3f --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Adresse.java @@ -0,0 +1,15 @@ +package Uebung1_Vererbung.verwaltung.kunden; + +public class Adresse { + private String name; + private String strasse; + private String plz; + private String wohnort; + + public Adresse(String name, String strasse, String plz, String wohnort) { + this.name = name; + this.strasse = strasse; + this.plz = plz; + this.wohnort = wohnort; + } +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Geschaeftskunde.java b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Geschaeftskunde.java new file mode 100644 index 0000000..7855f60 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Geschaeftskunde.java @@ -0,0 +1,21 @@ +package Uebung1_Vererbung.verwaltung.kunden; + +public class Geschaeftskunde extends Kunde{ + protected String firmaName; + protected String geschaeft; + + Geschaeftskunde(String name,String vorname, Adresse adresse, String firmaName) { + super(name,vorname, adresse); + this.firmaName = firmaName; + } + + + public String getFirmaName() { + return firmaName; + } + + public void setFirmaName(String firmaName) { + this.firmaName = firmaName; + } + +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Kunde.java b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Kunde.java new file mode 100644 index 0000000..a6da268 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Kunde.java @@ -0,0 +1,34 @@ +package Uebung1_Vererbung.verwaltung.kunden; + +public class Kunde { + private String name,vorname; + private int id; + private static int increment = 0; + private Adresse adresse; + + + +protected Kunde(String name,String vorname, Adresse adresse) { + this.id = increment; + increment++; + + this.name = name; + this.vorname = vorname; + this.adresse = adresse; + + } + + public String toString() { + + return "Kunde [id=" + id +"name=" + name + "vorname=" + vorname + ", adresse=" + adresse + "]"; + } + public void setName(String name) { + this.name = name; + } + public void setAdresse(Adresse adresse) { + this.adresse = adresse; + } + + + +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Main.java b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Main.java new file mode 100644 index 0000000..6179491 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Main.java @@ -0,0 +1,60 @@ +package Uebung1_Vererbung.verwaltung.kunden; + +class Person { + String name; + int age; + + public Person(String name, int age) { + this.name = name; + this.age = age; + + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getAge() { + return age; + } + + public void setAge(int age) { + this.age = age; + } + + @Override + public String toString() { + return "Person [name=" + name + ", age=" + age + "]"; + } +} + +public class Main { + public static void main(String[] args) { + Person person = new Person("John", 30); + int s = 5; + System.out.println(s); + System.out.println(foo(s)); + System.out.println(s); + + System.out.println(person.toString()); + System.out.println(foo(person)); + System.out.println(person.toString()); + } + + + public static Person foo(Person person) { + Person copy = new Person(person.getName(), person.getAge()); + System.out.println(copy); + System.out.println(person.hashCode()); + System.out.println(copy.hashCode()); + copy.setName("Amin"); + return copy; + } + public static int foo(int s) { + return s +1; + } +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Privatkunde.java b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Privatkunde.java new file mode 100644 index 0000000..35e7e2f --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung1_Vererbung/verwaltung/kunden/Privatkunde.java @@ -0,0 +1,14 @@ +package Uebung1_Vererbung.verwaltung.kunden; + +public class Privatkunde extends Kunde{ + private String telefon, email; + private String berater; + + protected Privatkunde(String name,String vorname, Adresse adresse, String telefon, String email) { + super(name,vorname,adresse); + this.telefon = telefon; + this.email = email; + this.berater = null; + } + +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Aufgabestellung_Uebung2_IO b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Aufgabestellung_Uebung2_IO new file mode 100644 index 0000000..ccb05bf --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Aufgabestellung_Uebung2_IO @@ -0,0 +1,11 @@ +1. Erstellen Sie ein persönliches git-Repository, +da wir die folgenden Aufgaben möglicherweise noch erweitern werden. + +2. Schreiben Sie eine Java-Klasse, welche die (sinnvolle!) Ausführung des unter dem Dateinamen DemoKonsole.java ermöglicht. +Schreiben Sie dazu auch entsprechende Unit-Tests. Aktualisieren Sie ihr Repository spätestens nach einer Übungsstunde. + +3. Erstellen Sie basierend auf den angefügten Klassendiagramm und der Klasse ZaehlerUI.java die entsprechenden Klassen, +Attribute und Methoden, im das Programm ausführen zu können. Was passiert, wenn Sie die super.clone()-Anweisungen weglassen? + +4. Erweitern Sie das beigefügte Paket zur Indexverwaltung.zip, so dass es lauffähig ist. Fügen Sie auch hier angemessen Unit-Tests hinzu. +Bitte denken Sie nochmals daran, für die Teile 2. bis 4. jeweils ein git-Repositoroy anzulegen! \ No newline at end of file diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/Datei.java b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/Datei.java new file mode 100644 index 0000000..a7d31c6 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/Datei.java @@ -0,0 +1,80 @@ +package Uebung2_loesung.Indexverwaltung; +import java.io.IOException; +import java.io.RandomAccessFile; + +public class Datei { + private int aktuell; + private String dateiname = "Stammdatei.txt"; + private int SATZLAENGE = 100; + private RandomAccessFile eineStammDatei; + + public Datei() { } + + public Datei(int satzlaenge) + { + SATZLAENGE = satzlaenge; + } + + public void speichereSatz(String satz, int index) throws IOException + { + positioniereAufSatz(index); + writeFixedString(satz, SATZLAENGE); + } + + public String leseSatz(int index) throws IOException + { + positioniereAufSatz(index); + + return readFixedString(SATZLAENGE); + } + + public void oeffneDatei(String name) throws IOException + { + if(!name.isBlank()) + dateiname = name; + + eineStammDatei = new RandomAccessFile(dateiname, "rw"); + } + + public void schliesseDatei() throws IOException + { + eineStammDatei.close(); + } + + public int gibAnzahlDatensaetze() throws IOException + { + return (int) (eineStammDatei.length() / SATZLAENGE); + } + + private void positioniereAufSatz(int index) throws IOException + { + if(index * SATZLAENGE * Character.BYTES != aktuell) + { + aktuell = index * SATZLAENGE * Character.BYTES; + eineStammDatei.seek(aktuell); + } + } + + private String readFixedString(int laenge) throws IOException + { + StringBuffer satz = new StringBuffer(); + + while(laenge-- > 0) + satz.append(eineStammDatei.readChar()); + + return satz.toString(); + } + + private void writeFixedString(String einDatensatz, int laenge) throws IOException + { + StringBuffer sb = new StringBuffer(einDatensatz); + + while(sb.length() != laenge) + sb.append('\0'); + + for(int index = 0; index < laenge; index++) { + + eineStammDatei.writeChar(sb.charAt(index)); + } + } +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/Index.java b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/Index.java new file mode 100644 index 0000000..2a332e6 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/Index.java @@ -0,0 +1,101 @@ +package Uebung2_loesung.Indexverwaltung; +import java.io.*; + +public class Index { + // Attribute + private final int MAX = 10; + private String dateiname = "Indexdatei.txt"; + private int indextabelle[]; // 0 .. MAX-1 + private RandomAccessFile eineIndexDatei; + + // Konstruktor + public Index() + { + indextabelle = new int[MAX]; + // Initialisierung der indextabelle + for(int i = 0; i < MAX; i++) indextabelle[i] = -1; + // Kein Datensatz zu Schluessel vorhanden + } + + // Methoden + public void erzeugeEintrag(int schluessel, int index) throws IOException + { + /** Speichert zu einen Schluessel den zugehoerigen + * Datensatz-Index in der indextabelle + */ + if(schluessel < MAX) + indextabelle[schluessel] = index; + // Aktualisieren der Indexdatei, + // d. h. Abspeichern der Datei + aktualisiereIndexDatei(schluessel); + } + + public int gibIndexZuSchluessel(int schluessel) // throws InvalidIndexException + { + /* + // Gibt zu dem Schluessel den gefundenen + // Datensatz-Index zurueck + if(schluessel < MAX) + return indextabelle[schluessel]; + // oder -1, wenn Schluessel zu gross ist + else + return -1; + */ + + if(schluessel >= MAX || indextabelle[schluessel] == -1) + throw new InvalidIndexException(schluessel); + + return indextabelle[schluessel]; + + } + + public void ladeIndexDatei() throws IOException + { + /** Liest die Indextabelle vollstaendig aus einer Datei + * Dies geschieht nur beim Start des Programms + */ + eineIndexDatei = new RandomAccessFile(dateiname, "r"); + int index; + for(int schluessel = 0; schluessel < MAX; schluessel++) + { + index = eineIndexDatei.readInt(); + indextabelle[schluessel] = index; + } + eineIndexDatei.close(); + } + + public void speichereIndexDatei() throws IOException + { + /** Speichert die Indextabelle vollstaendig in einer Datei + * Dies geschieht beim Beenden des Programs + */ + eineIndexDatei = new RandomAccessFile(dateiname, "rw"); + for(int schluessel = 0; schluessel < MAX; schluessel++) + eineIndexDatei.writeInt(indextabelle[schluessel]); + eineIndexDatei.close(); + } + + private void aktualisiereIndexDatei(int schluessel) throws IOException + { + /** Aktualisiert die indextabelle in der Indexdatei + * Dies geschieht beim Hinzufuegen eines neuen + * Indexes oder Aendern eines alten Indexes + */ + eineIndexDatei = new RandomAccessFile(dateiname, "rw"); + // eine int-Zahl belegt 4 Bytes + eineIndexDatei.seek((long)(schluessel * 4)); + eineIndexDatei.writeInt(indextabelle[schluessel]); + eineIndexDatei.close(); + } + + // Zum Testen + public void gibIndextabelleAus() + { + int schluessel = 0; + for(int element : indextabelle) + { + System.out.println(schluessel + " " + element); + schluessel++; + } + } +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/IndexUI.java b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/IndexUI.java new file mode 100644 index 0000000..03f43e0 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/IndexUI.java @@ -0,0 +1,95 @@ +package Uebung2_loesung.Indexverwaltung; +import java.io.IOException; +import java.util.Scanner; + +public class IndexUI { + + public static void main(String[] args) { + // TODO Auto-generated method stub + Index indexDatei = new Index(); + Datei stammDatei = new Datei(); + Scanner sc = new Scanner(System.in); + + try { + indexDatei.ladeIndexDatei(); + } + catch(IOException e) + { + System.err.println("INFO - Dateien nicht vorhanden - Erzeuge Beispiel!"); + + int idx = 0; + try { + stammDatei.oeffneDatei("stammdatei.txt"); + + indexDatei.erzeugeEintrag(6, idx); + stammDatei.speichereSatz("Satz 1", idx); + + idx++; + indexDatei.erzeugeEintrag(1, idx); + stammDatei.speichereSatz("Satz 2", idx); + + idx++; + indexDatei.erzeugeEintrag(3, idx); + stammDatei.speichereSatz("Satz 3", idx); + + idx++; + indexDatei.speichereIndexDatei(); + stammDatei.schliesseDatei(); + + } catch (IOException ee) { + ee.printStackTrace(); + } + } + + indexDatei.gibIndextabelleAus(); + + try { + stammDatei.oeffneDatei("stammdatei.txt"); + + while(true) { + System.out.print("Bitte geben Sie einen Schluessel ein:"); + String schluessel = sc.nextLine(); + + if(schluessel.isEmpty()) + break; + + try { + int index = indexDatei.gibIndexZuSchluessel(Integer.parseInt(schluessel)); + + String satz = stammDatei.leseSatz(index); + + System.out.println("Der zu " + schluessel + " gewuenschte Satz lautet: ==> " + satz + " <=="); + + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (InvalidIndexException e) { + System.err.println("\n==> Zugriff auf nicht vorhandenen Schluessel: " + e.gibSchluessel() + " <=="); + } + + } + + } catch (IOException e1) { + e1.printStackTrace(); + } catch (NumberFormatException e2) { + e2.printStackTrace(); + } + finally { + try { + + indexDatei.speichereIndexDatei(); + + stammDatei.schliesseDatei(); + + System.err.println("Dateien geschlossen!"); + + } catch (IOException e) { + e.printStackTrace(); + } + } + + System.out.println("Programm beendet!"); + + } + +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/InvalidIndexException.java b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/InvalidIndexException.java new file mode 100644 index 0000000..3eb8eec --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/Indexverwaltung/InvalidIndexException.java @@ -0,0 +1,17 @@ +package Uebung2_loesung.Indexverwaltung; + +public class InvalidIndexException extends Exception { + private int schluessel; + + public InvalidIndexException(int s){ + super("Access to Unknown Index"); + schluessel = s; + } + + public InvalidIndexException(int s, String fehlermeldung){ + super(fehlermeldung); + schluessel = s; + } + + public int gibSchluessel() { return schluessel; } +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/Console.java b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/Console.java new file mode 100644 index 0000000..9c45fad --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/Console.java @@ -0,0 +1,32 @@ +package Uebung2_IO.loesung2; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; + +public class Console { + + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + public static String readString() throws IOException { + BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); + String eingabe = reader.readLine(); + return eingabe; + } + public static char[] readCharArray() throws IOException { + BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); + String eingabe = reader.readLine(); + char[] eingabeChar = eingabe.toCharArray(); + return eingabeChar; + } + public static boolean readBoolean() throws IOException { + BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); + String eingabe = reader.readLine(); + boolean eingabeBo = Boolean.valueOf(eingabe); + return eingabeBo; + +} + +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/ConsoleTest.java b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/ConsoleTest.java new file mode 100644 index 0000000..bb4f91c --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/ConsoleTest.java @@ -0,0 +1,46 @@ +package Uebung2_IO.loesung2; + +import static org.junit.jupiter.api.Assertions.*; + +import java.io.ByteArrayInputStream; +import java.io.IOException; + +import org.junit.jupiter.api.Test; + +public class ConsoleTest { + + @Test + public void testReadString() throws IOException { + ByteArrayInputStream inputStream = new ByteArrayInputStream("Testeingabe".getBytes()); + System.setIn(inputStream); + + String result = Console.readString(); + + assertEquals("Testeingabe", result); + } + + @Test + public void testReadCharArray() throws IOException { + + ByteArrayInputStream inputStream = new ByteArrayInputStream("abc".getBytes()); + System.setIn(inputStream); + + char[] result = Console.readCharArray(); + + assertArrayEquals(new char[]{'a', 'b', 'c'}, result); + } + + @Test + public void testReadBoolean() throws IOException { + + ByteArrayInputStream inputStream = new ByteArrayInputStream("true".getBytes()); + System.setIn(inputStream); + + + boolean result = Console.readBoolean(); + + + assertTrue(result); + } +} + diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/DemoConsole.java b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/DemoConsole.java new file mode 100644 index 0000000..8040a56 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung2/DemoConsole.java @@ -0,0 +1,21 @@ +package Uebung2_IO.loesung2; + +public class DemoConsole { + + public static void main(String[] args) throws Exception { + System.out.println("Text eingeben: "); + String text = Console.readString(); + System.out.println("Gelesener Text: " + text); + + System.out.println("Text eingeben: "); + char [] ca = Console.readCharArray(); + System.out.println("Gelesenes char-Feld: "); + for(char celement: ca) + System.out.print(celement); + System.out.println(); + + System.out.println("Boolean eingeben: "); + boolean b = Console.readBoolean(); + System.out.println("Gelesener Wert: " + b); + } +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Unterzaehler.java b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Unterzaehler.java new file mode 100644 index 0000000..b8fa216 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Unterzaehler.java @@ -0,0 +1,24 @@ +package Uebung2_IO.loesung3; + +public class Unterzaehler extends Zaehler { + private int unterzaehlerstand; + + + Unterzaehler(String zahelerort, Verbraucher verbraucher, int zaehlerstand) { + super(zahelerort,verbraucher, zaehlerstand); + this.unterzaehlerstand = zaehlerstand; + } + public int getUnterzaehlerstand() { + return unterzaehlerstand; + } + + public void setUnterzaehlerstand(int unterzaehlerstand) { + this.unterzaehlerstand = unterzaehlerstand; + } + @Override + public + Unterzaehler clone() throws CloneNotSupportedException { + return (Unterzaehler) super.clone(); + } + +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Verbraucher.java b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Verbraucher.java new file mode 100644 index 0000000..bf81ba6 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Verbraucher.java @@ -0,0 +1,18 @@ +package Uebung2_IO.loesung3; + +public class Verbraucher { + private String name; + + public Verbraucher(String name) { + this.name = name; + } + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + +} \ No newline at end of file diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Zaehler.java b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Zaehler.java new file mode 100644 index 0000000..69a51e7 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Zaehler.java @@ -0,0 +1,39 @@ + package Uebung2_IO.loesung3; + //man muss hier Cloneable implementieren + public class Zaehler implements Cloneable { + private String zahelerort; + private Verbraucher verbraucher = null; + private int zaehlerstand; + + public Zaehler(String zahelerort, Verbraucher verbraucher, int zaehlerstand) { + + this.zahelerort = zahelerort; + this.verbraucher = verbraucher; + this.zaehlerstand = zaehlerstand; + } + + public String getZahelerort() { + return zahelerort; + } + public void setZahelerort(String zahelerort) { + this.zahelerort = zahelerort; + } + public Verbraucher getMeinVerbraucher() { + return verbraucher; + } + public void setVerbraucher(Verbraucher verbraucher) { + this.verbraucher = verbraucher; + } + public int getZaehlerstand() { + return zaehlerstand; + } + public void setZaehlerstand(int zaehlerstand) { + this.zaehlerstand = zaehlerstand; + } + @Override + public Zaehler clone() throws CloneNotSupportedException { + return (Zaehler) super.clone(); + } + + + } diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/ZaehlerUI.java b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/ZaehlerUI.java new file mode 100644 index 0000000..4d752c3 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/ZaehlerUI.java @@ -0,0 +1,51 @@ +package Uebung2_IO.loesung3; + +public class ZaehlerUI { + public static void main(String[] args) throws Exception { + Zaehler einZaehler, klonZaehler = null; + + Verbraucher einVerbraucher = new Verbraucher("Schulz"); + einZaehler = new Zaehler("Elektro", einVerbraucher, 123); + + try + { + klonZaehler = einZaehler.clone(); + } + catch(CloneNotSupportedException e) + { + System.out.println("Fehler"); + } + + System.out.println("Zählerstand =" + einZaehler.getZaehlerstand() + + " gehört zu Verbraucher " + einZaehler.getMeinVerbraucher().getName()); + + System.out.println("Geklonter Zähler Zählerstand = " + klonZaehler.getZaehlerstand() + + " gehört zu Verbraucher " + klonZaehler.getMeinVerbraucher().getName()); + + if(einZaehler.getMeinVerbraucher() == klonZaehler.getMeinVerbraucher()) + System.out.println("Verbraucher identisch"); + else + System.out.println("Verbraucher nicht identisch"); + + Unterzaehler nochEinZaehler = new Unterzaehler("Gas", einVerbraucher, 500); + + System.out.println("Zählerstand = " + nochEinZaehler.getZaehlerstand() + + " Unterzählerstand: " + nochEinZaehler.getUnterzaehlerstand() + + " gehört zu Verbraucher " + nochEinZaehler.getMeinVerbraucher().getName()); + + Unterzaehler klonUnterzaehler = null; + + try + { + klonUnterzaehler = nochEinZaehler.clone(); + } + catch(CloneNotSupportedException e) + { + System.out.println("Fehler"); + } + + System.out.println("Geklonter Unterzähler: Zählerstand = " + klonUnterzaehler.getZaehlerstand() + + " Unterzählerstand: " + klonUnterzaehler.getUnterzaehlerstand() + + " gehört zu Verbraucher " + klonUnterzaehler.getMeinVerbraucher().getName()); + } +} diff --git a/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Zaehler_Klassendigramm.webp b/PR2_UIB/Moodle_Uebungen/Uebung2_IO/loesung3/Zaehler_Klassendigramm.webp new file mode 100644 index 0000000000000000000000000000000000000000..b442c85321819d6422a845afc30e4f4a3ff8a048 GIT binary patch literal 177968 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�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 literal 0 HcmV?d00001 diff --git a/PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/Buchung.java b/PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/Buchung.java new file mode 100644 index 0000000..cc682be --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/Buchung.java @@ -0,0 +1,34 @@ +package Uebung3_Buchungen; + +import java.util.Date; + +public class Buchung { + + int buchungsnummer; + Date Buchungsdatum; + String buchungskonto; + private double buchungsbetrag; + + private Buchung(int buchungsnummer, Date buchungsdatum, String buchungskonto, double buchungsbetrag) { + this.buchungsnummer = buchungsnummer; + Buchungsdatum = buchungsdatum; + this.buchungskonto = buchungskonto; + this.buchungsbetrag = buchungsbetrag; + } + + @Override + public String toString() { + return "Buchung [buchungsnummer=" + buchungsnummer + ", Buchungsdatum=" + Buchungsdatum + ", buchungskonto=" + + buchungskonto + ", buchungsbetrag=" + buchungsbetrag + "]"; + } + + public double getBuchungsbetrag() { + return buchungsbetrag; + } + + public void setBuchungsbetrag(double buchungsbetrag) { + this.buchungsbetrag = buchungsbetrag; + } + + +} \ No newline at end of file diff --git a/PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/BuchungenAufgabe.java b/PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/BuchungenAufgabe.java new file mode 100644 index 0000000..88000d3 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/BuchungenAufgabe.java @@ -0,0 +1,65 @@ +package Uebung3_Buchungen; + +import java.io.BufferedReader; +import java.io.FileReader; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.List; + +public class BuchungenAufgabe { + + public static void main(String[] args) { + + ArrayList overEqual100 = new ArrayList<>(); + ArrayList lessEqual100 = new ArrayList<>(); + String dateiName = "buchungen.text"; + try (BufferedReader reader = new BufferedReader(new FileReader(dateiName))){ + String line; + while (( line = reader.readLine()) != null) { +// String[] split1 = line.split("\""); +// String [] split2 = split1[0].split(" "); +// String [] zsm = {split2[0], split2[1], split1[1], split1[2]}; + // Buchung buchung = new Buchung("..."); + ArrayList data = splitIgnoringQuotes(line); + if (Double.parseDouble(data.get(3)) < 1000) { + lessEqual100.add(data); + }else { + overEqual100.add(data); + } + } + + + } catch (Exception e) { + e.printStackTrace(); + } + for (ArrayList arrayList : lessEqual100) { + System.out.println(arrayList.toString()); + } + } + public static ArrayList splitIgnoringQuotes(String input) { + ArrayList parts = new ArrayList<>(); + StringBuilder sb = new StringBuilder(); + boolean insideQuotes = false; + + for (char c : input.toCharArray()) { + if (c == '\"') { + insideQuotes = !insideQuotes; + } else if (c == ' ' && !insideQuotes) { + parts.add(sb.toString()); + sb.setLength(0); + } else { + sb.append(c); + } + } + + if (sb.length() > 0) { + parts.add(sb.toString()); + } + + return parts; + } +} + + + diff --git a/PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/Reader.java b/PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/Reader.java new file mode 100644 index 0000000..7de6bf3 --- /dev/null +++ b/PR2_UIB/Moodle_Uebungen/Uebung3_Buchungen/Reader.java @@ -0,0 +1,63 @@ +package Uebung3_Buchungen; + +import java.io.BufferedReader; +import java.io.FileReader; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.List; + +public class Reader { + + public static void main(String[] args) { + int buchungsnummer; + Date Buchungsdatum; + String buchungskonto; + double buchungsbetrag; + ArrayList overEqual100 = new ArrayList<>(); + ArrayList lessEqual100 = new ArrayList<>(); + String dateiName = "buchungen.text"; + try (BufferedReader reader = new BufferedReader(new FileReader(dateiName))){ + String line; + while (( line = reader.readLine()) != null) { + ArrayList data = splitIgnoringQuotes(line); + if (Double.parseDouble(data.get(3)) < 1000) { + lessEqual100.add(data); + }else { + overEqual100.add(data); + } + } + + + } catch (Exception e) { + e.printStackTrace(); + } + for (ArrayList arrayList : lessEqual100) { + System.out.println(arrayList.toString()); + } + } + public static ArrayList splitIgnoringQuotes(String input) { + ArrayList parts = new ArrayList<>(); + StringBuilder sb = new StringBuilder(); + boolean insideQuotes = false; + + for (char c : input.toCharArray()) { + if (c == '\"') { + insideQuotes = !insideQuotes; + } else if (c == ' ' && !insideQuotes) { + parts.add(sb.toString()); + sb.setLength(0); + } else { + sb.append(c); + } + } + + if (sb.length() > 0) { + parts.add(sb.toString()); + } + + return parts; + } +} + + diff --git a/PR2_UIB/buchungen.text b/PR2_UIB/buchungen.text new file mode 100644 index 0000000..b64acdc --- /dev/null +++ b/PR2_UIB/buchungen.text @@ -0,0 +1,7 @@ +1 22.03.2024 "Einzahlung" 1000.00 +2 22.03.2024 "Einzahlung" 50.00 +3 23.03.2024 "Einkauf Edeka" -45.45 +4 24.03.2024 "Gehalt" 1200.00 +5 31.03.2024 "Mietzins Wohnung" -1100.00 +6 31.03.2024 "Nebenkostenpauschale Wohnung" -250.00 +7 04.04.2024 "Einkauf Netto" 42.02 diff --git a/PR2_UIB/src/test.txt b/PR2_UIB/src/test.txt new file mode 100644 index 0000000..aafd30e --- /dev/null +++ b/PR2_UIB/src/test.txt @@ -0,0 +1 @@ +nullsirat jajjaefhfahj 12312.42 \ No newline at end of file