diff --git a/Programmierung2/.classpath b/Programmierung2/.classpath
deleted file mode 100644
index ca549ef..0000000
--- a/Programmierung2/.classpath
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Programmierung2/.gitignore b/Programmierung2/.gitignore
deleted file mode 100644
index ae3c172..0000000
--- a/Programmierung2/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/bin/
diff --git a/Programmierung2/.project b/Programmierung2/.project
deleted file mode 100644
index 60a0ff0..0000000
--- a/Programmierung2/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
- Programmierung2
-
-
-
-
-
- org.eclipse.jdt.core.javabuilder
-
-
-
-
-
- org.eclipse.jdt.core.javanature
-
-
diff --git a/Programmierung2/.settings/org.eclipse.core.resources.prefs b/Programmierung2/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/Programmierung2/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/=UTF-8
diff --git a/Programmierung2/.settings/org.eclipse.jdt.core.prefs b/Programmierung2/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 6e5f874..0000000
--- a/Programmierung2/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=22
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=22
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=22
diff --git a/Programmierung2/src/Algorithmus/Algorithmus.java b/Programmierung2/src/Algorithmus/Algorithmus.java
deleted file mode 100644
index 101318f..0000000
--- a/Programmierung2/src/Algorithmus/Algorithmus.java
+++ /dev/null
@@ -1,126 +0,0 @@
-package Algorithmus;
-
-public class Algorithmus {
-
- public static void main(String[] args) {
-
- int[] arr = { 4,34,2,6,8,12,21};
- int[] sortedArray =insertionSort(arr) ;
-
- for (int i : sortedArray)
- System.out.print(i + " ");
-
-
- }
-
- public static int[] mergeSort(int[] arr) {
- /*
- * Big-O: O(n log n)
- */
- return arr;
- }
-
- public static int[] insertionSort(int[] arr) {
- /*
- * Big-O: O(n²)
- * indexes: 0 1 2 3 4 5 6
- * Beispiel array = int[] arr = { 4,34,2,6,8,10,21};
- */
-
- for (int i = 1; i < arr.length; i++) {
- // speicher den Wert an i Index nehmen an dass i = 2;
- // also z.b: Key = 2;
- int key = arr[i];
- // speicher das vorhägie Index
- int j = i - 1;
- /*
- * Also die While Loop Konzept ist:
- * - betrachtet wird die 2 an Index 2
- * - j = 1 also >= 0
- * - arr[i] ist in dem Fall = 34
- * - ist die 34 > 2, weil key = 2;
- * - ja
- */
- while (j >= 0 && arr[j] > key) {
- //also ersetzen 34 druch die 2
- // aber die 2 wurde erst in var key abgespeichert
- arr[j + 1] = arr[j];
- // index j -1
- j = j - 1;
- }
- // hier ersetzen wir die 34 durch die 2
- arr[j + 1] = key;
- }
-
- return arr; // Rückgabe des sortierten Arrays
- }
-
-
- public static int[] selectionSort(int[] arr) {
-
- /*
- * Big-O: O(n²)
- * indexes: 0 1 2 3 4 5 6
- * Beispiel array = int[] arr = { 4,34,2,6,8,10,21};
- *
- */
- //Äueßere Schleife beginnt bei Index(0) bis zu index (6)
- // Beispiel wert
- for (int i = 0; i < arr.length - 1; i++) { // i = index (4)
- int minIndex = i;// minIndex = index (4)
-
- // überprüft ob die 4 < andere Element im array
- // es soll ab i + 1 überprüft werden
- for (int j = i + 1; j < arr.length; j++) {
- //ja, die 2 < 4
- if (arr[j] < arr[minIndex]) {
- // also minIndex = index (2) also gleich 2
- minIndex = j;
- }
- }
- // falls minIndex anderes Index bekommen hat?
- if (minIndex != i) {
- //speichere erst die 4 hier
- int temp = arr[i];
- // ersetzte die 2 durch die 4
- arr[i] = arr[minIndex];
- //ersetze die 4 durch die 2
- arr[minIndex] = temp;
- }
- }
-
- return arr; // Rückgabe des sortierten Arrays
- }
-
- public static int[] bubbleSort(int[] arr) {
- // Big-O: O(n²)
- for (int i = 0; i < arr.length; i++)
- for(int j = 0; j < arr.length; j++)
- if (arr[i] < arr[j]) {
- int temp = arr[i];
- arr[i] = arr[j];
- arr[j] = temp;
- }
- return arr;
- }
-
- public static int binarySearch(int[] arr, int value) {
- int erst = 0; // Initialisierung des Startindexes auf den ersten Index des Arrays
- int last = arr.length - 1; // Initialisierung des Endindexes auf den letzten Index des Arrays
-
- while (erst <= last) { // Schleife läuft, solange der Startindex kleiner oder gleich dem Endindex ist
- int mittel = (erst + last) / 2; // Berechnung des mittleren Indexes durch Addition von Start und Ende, dann Division durch 2
-
- if (arr[mittel] == value) // Überprüfung, ob der Wert im Array an der mittleren Position dem gesuchten Wert entspricht
- return mittel; // Wenn ja, wird der mittlere Index als Ergebnis zurückgegeben
- else if (arr[mittel] < value) // Überprüfung, ob der Wert im Array an der mittleren Position kleiner als der gesuchte Wert ist
- erst = mittel + 1; // Wenn ja, wird der Startindex auf die Position nach der Mitte gesetzt
-
- else // Wenn der Wert im Array an der mittleren Position größer als der gesuchte Wert ist
- last = mittel - 1; // Setzt den Endindex auf die Position vor der Mitte
- }
- return -1; // Wenn der Wert nicht gefunden wird, wird -1 zurückgegeben
- }
-
-
-}
diff --git a/Programmierung2/src/Algorithmus/Array.java b/Programmierung2/src/Algorithmus/Array.java
deleted file mode 100644
index a1057aa..0000000
--- a/Programmierung2/src/Algorithmus/Array.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package Algorithmus;
-public class Array {
-
- public static void main(String[] args) {
- // Erstellt ein Array für 5 Elemente vom Typ int
- int[] array = new int[5];
-
- // Erstellt und initialisiert das Array mit Werten
- int[] array2 = {1, 2, 3, 4, 5};
-
- // Zugriff auf das erste Element
- int firstElement = array[0];
-
- // Zugriff auf das letzte Element (bei einem Array der Größe 5)
- int lastElement = array[4];
-
- // Setzt das dritte Element des Arrays auf 10
- array2[2] = 10;
-
- //for schleife mit einem Array
- for(int i = 0; i < array.length; i++)
- System.out.println(array[i]);
-
- //foreach Schleife
- for(int element : array)
- System.out.println(element);
-
-
- // Erstellt ein 3x3-Array (Matrix
- int[][] array_21d = new int[3][3];
-
- //Initialisieren eines 2D-Arrays:
- int[][] array_2d = {
- {1, 2, 3},
- {4, 5, 6},
- {7, 8, 9}
- };
-
-
- // Greift auf das Element in der zweiten Zeile und dritten Spalte zu
- int element = array_2d[1][2];
-
-
- //Array mit Objekten, hier sollte eine Klass mit Name Person erstellt werden
- /*
- * Person[] persons = new Person[2]; // Erstellt ein Array für 2 Person-Objekte
- persons[0] = new Person("Alice", 30);
- persons[1] = new Person("Bob", 25);
- System.out.println(persons[0].name); // Ausgabe: Alice
- */
-
- }
-
-}
diff --git a/Programmierung2/src/Algorithmus/Complexity(Big O Notation).odt b/Programmierung2/src/Algorithmus/Complexity(Big O Notation).odt
deleted file mode 100644
index 031bada..0000000
Binary files a/Programmierung2/src/Algorithmus/Complexity(Big O Notation).odt and /dev/null differ
diff --git a/Programmierung2/src/Algorithmus/Logischen_Operatoren.java b/Programmierung2/src/Algorithmus/Logischen_Operatoren.java
deleted file mode 100644
index 69e92ad..0000000
--- a/Programmierung2/src/Algorithmus/Logischen_Operatoren.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package Algorithmus;
-
-public class Logischen_Operatoren {
-
- public static void main(String[] args) {
-
- /* Bitweises UND (&):
- * - Funktion: Der & Operator prüft beide Operanden und gibt true zurück, wenn beide Operanden true sind.
- * - Merkmal: Beide Bedingungen (a und b) werden immer ausgewertet, unabhängig davon, ob die erste Bedingung false ergibt.
- * - Das Prinzip gilt auch für die anderen Logischen_Operatoren
- */
-
- //Beispiel:
- boolean x = true;
- boolean y = false;
- // Z ist false, weil y false ist, aber y wird dennoch ausgewertet.
- boolean z = x & y;
-
- //Praktischer Einsatz:
- int a = 5;
- int b = 0;
-
- //Beide Bedingungen werden überprüft, b wird erhöht, auch wenn a false ist!
- if ( a > 5 & (b++ < 10))
- System.out.println(a);
-
- System.out.println(b);// b = 1
-
-
-
-
-
- /* Logisches UND (&&):
- * - Funktion: Der && Operator prüft ebenfalls beide Operanden und gibt true zurück, wenn beide true sind.
- * - Merkmal: Wenn der erste Operand false ist, wird der zweite Operand nicht mehr ausgewertet. Dies spart Rechenzeit und kann in bestimmten Fällen Fehler vermeiden.
- */
-
- //Praktischer Einsatz:
- int a2 = 5;
- int b2 = 0;
-
- // Beide Bedingungen werden überprüft, b wird nicht erhöht, da a false ist!
- if (a2 > 5 && (b2++ < 10))
- System.out.println(a2);
-
- System.out.println(b2);// b = 0
-
-
-
-
- }
-}
diff --git a/Programmierung2/src/BankSystemGUI/BankController.java b/Programmierung2/src/BankSystemGUI/BankController.java
deleted file mode 100644
index f1da3c3..0000000
--- a/Programmierung2/src/BankSystemGUI/BankController.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package BankSystemGUI;
-
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.PrintWriter;
-
-public class BankController {
- private File file;
- BankController(){
- file = new File("C:\\Users\\obaya\\git\\Programmierung2\\Programmierung2\\src\\BankSystemGUI\\Kunde.txt");
- if (!file.exists()) {
- try {
- if (file.createNewFile()) // createNewFile() gibt boolean zurück,ob der File ergolgreich erstellt wurde
- // oder nicht
- System.out.println("Datei erstellt: " + file.getName()); // der File muss im Pfad nicht existieren,
- // damit es erstellt wurde
- } catch (IOException d) {
- d.printStackTrace();
- }
- }
- }
-
- public BankSystem addKunde(String name,String vorname,String password,String email) {
- BankSystem b1 = new BankSystem(name,vorname,password,email);
- saveKunde(b1);
- return b1;
- }
-
-
-
- public void saveKunde(BankSystem b1) {
- try (PrintWriter write = new PrintWriter(new FileWriter(file))) {
- write.println("ID: " + b1.getId());
- write.println("Vorname: " + b1.getVorname());
- write.println("Nachname: " + b1.getName());
- write.println("Password: " + b1.getPassword());
- write.println("Email: " + b1.getEmail());
- write.println("kontoStand " + b1.getKontoStand());
- write.println(); // Leere Zeile zwischen Einträgen
- write.flush();
- write.close();
- System.out.println(b1.toString());
- } catch (IOException e) {
- e.printStackTrace();
-
- }
- }
-}
-
diff --git a/Programmierung2/src/BankSystemGUI/BankSystem.java b/Programmierung2/src/BankSystemGUI/BankSystem.java
deleted file mode 100644
index 8eedcd9..0000000
--- a/Programmierung2/src/BankSystemGUI/BankSystem.java
+++ /dev/null
@@ -1,93 +0,0 @@
-package BankSystemGUI;
-
-import java.awt.Dimension;
-import java.awt.FlowLayout;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-
-import javax.swing.JFrame;
-import javax.swing.JTextField;
-// Recourses Klasse (Model)
-public class BankSystem {
- private String name;
- private String vorname;
- private String password;
- private String email;
- private double kontoStand;
- private int Id;
- private static int IDCounter = 0;
-
- BankSystem(){}
- BankSystem(String name,String vorname,String password,String email){
- this.name = name;
- this.vorname = vorname;
- this.password = password;
- this.email = email;
- this.kontoStand = 0;
- this.Id = ++IDCounter;
-
- }
-
- public double einzahlung(double wert) {
-
- return this.kontoStand += wert;
- }
-
-
-
-
- public int loadIDCounter() {
- return Id;
- }
-
- public String getEmail() {
- return email;
- }
-
- public void setEmail(String email) {
- this.email = email;
- }
-
- 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 String getPassword() {
- return password;
- }
-
- public void setPassword(String password) {
- this.password = password;
- }
-
-
-
- public double getKontoStand() {
- return kontoStand;
- }
-
-
- public int getId() {
- return Id;
- }
-
-
- @Override
- public String toString() {
- return "BankSystem [name=" + name + ", vorname=" + vorname + ", password=" + password + ", kontoStand="
- + kontoStand + ", Id=" + Id + "]";
- }
-
-}
diff --git a/Programmierung2/src/BankSystemGUI/BankSystemTest.java b/Programmierung2/src/BankSystemGUI/BankSystemTest.java
deleted file mode 100644
index 2caba08..0000000
--- a/Programmierung2/src/BankSystemGUI/BankSystemTest.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package BankSystemGUI;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import org.junit.jupiter.api.Test;
-
-public class BankSystemTest {
-
- @Test
- public void testEinzahlung() {
- BankSystem test = new BankSystem();
- double x = test.einzahlung(100);
- assertEquals(100, x, 0.001); // Hier wird überprüft, ob der Kontostand 100.0 ist
- }
-}
diff --git a/Programmierung2/src/BankSystemGUI/Hauptfenster.java b/Programmierung2/src/BankSystemGUI/Hauptfenster.java
deleted file mode 100644
index 315267a..0000000
--- a/Programmierung2/src/BankSystemGUI/Hauptfenster.java
+++ /dev/null
@@ -1,57 +0,0 @@
-package BankSystemGUI;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.util.Scanner;
-
-import javax.swing.JLabel;
-
-public class Hauptfenster extends BankSystem {
- private Window fenster;
- private Scanner scan;
-
- Hauptfenster() throws FileNotFoundException{
- File fr = new File("C:\\Users\\obaya\\git\\Programmierung2\\Programmierung2\\src\\BankSystemGUI\\Kunde.txt");
- scan = new Scanner(fr);
- String vorname = null;
- String name = null;
- double kontoStand = 0.0;
- while (scan.hasNextLine()) {
- String line = scan.nextLine();
- // Prüfen, ob die Zeile den "Vorname" enthält
- if (line.startsWith("Vorname:"))
- vorname = line.split(":")[1].trim(); // Den Namen extrahieren
-
- if (line.startsWith("Nachname: "))
- name = line.split(":")[1].trim();
-
- if (line.startsWith("kontoStand ")) {
- String value = line.split(" ")[1].trim();
- kontoStand = Double.parseDouble(value);
- break; // Wir haben den Namen gefunden, also beenden wir die Schleife
- }
-
-
-
- }
-
- fenster = new Window();
- fenster.setTitle("Haupseite");
-
- JLabel willkommennachricht = new JLabel("Willkommen " + vorname + " " + name);
- willkommennachricht.setBounds(10, 10, 200, 40);
-
-
- JLabel konotstand = new JLabel("Deine Aktuelle Kontostand: " + kontoStand);
- konotstand.setBounds(10,50 ,200 ,40 );
-
-
- fenster.add(konotstand);
- fenster.add(willkommennachricht);
- }
-
- public static void main(String[] args) throws FileNotFoundException {
- Hauptfenster test = new Hauptfenster();
- }
-
-}
diff --git a/Programmierung2/src/BankSystemGUI/Kunde.txt b/Programmierung2/src/BankSystemGUI/Kunde.txt
deleted file mode 100644
index fb2ecf6..0000000
--- a/Programmierung2/src/BankSystemGUI/Kunde.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-ID: 1
-Vorname: obai
-Nachname: albek
-Password: 12345
-Email: obay@gmail.com
-kontoStand 0.0
-
diff --git a/Programmierung2/src/BankSystemGUI/LogIn.java b/Programmierung2/src/BankSystemGUI/LogIn.java
deleted file mode 100644
index d226d1d..0000000
--- a/Programmierung2/src/BankSystemGUI/LogIn.java
+++ /dev/null
@@ -1,125 +0,0 @@
-package BankSystemGUI;
-
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.GridLayout;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import javax.swing.JButton;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
-import javax.swing.JTextField;
-
-public class LogIn extends JFrame implements ActionListener {
- private JButton submit;
- private File file;
- private PrintWriter write;
- private JTextField eingabeVorname;
- private JTextField eingabenNachname;
- private JTextField eingabenPassword;
- private JTextField eingabeEmail;
- private BankController controller;
- private Window fenster;
-
- LogIn() {
- controller = new BankController();
- fenster = new Window();
- fenster.setTitle("log in Seite");
-
- JLabel überschrift = new JLabel("loggen Sie sich ein: ");
- überschrift.setBounds(10, 2, 120, 40);
-
- JLabel vorname = new JLabel("Vorname: ");
- vorname.setBounds(10, 50, 60, 10);
- eingabeVorname = new JTextField();
- eingabeVorname.setBounds(80, 50, 100, 20);
-
- // setBounds(int x, int y, int width, int height)
- JLabel nachname = new JLabel("nachname: ");
- nachname.setBounds(10, 90, 100, 20);
-
- eingabenNachname = new JTextField();
- eingabenNachname.setBounds(80, 90, 100, 20);
-
- JLabel password = new JLabel("password: ");
- password.setBounds(10, 130, 100, 20);
-
- eingabenPassword = new JTextField();
- eingabenPassword.setBounds(80, 130, 100, 20);
-
- JLabel email = new JLabel("Email: ");
- email.setBounds(10, 170, 100, 20);
-
- eingabeEmail = new JTextField();
- eingabeEmail.setBounds(80, 170, 100, 20);
-
- submit = new JButton("Submit");
- submit.setBounds(10, 210, 100, 20);
-
- submit.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- try {
- logUser();
- } catch (IOException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }
- }
- });
-
- fenster.add(überschrift);
- fenster.add(vorname);
- fenster.add(eingabeVorname);
- fenster.add(nachname);
- fenster.add(eingabenNachname);
- fenster.add(password);
- fenster.add(eingabenPassword);
- fenster.add(email);
- fenster.add(eingabeEmail);
- fenster.add(submit);
-
- }
-
- public void logUser() throws IOException {
- if (eingabeVorname.getText().isEmpty() || eingabenNachname.getText().isEmpty()
- || eingabenPassword.getText().isEmpty() || eingabeEmail.getText().isEmpty())
- JOptionPane.showMessageDialog(null, "Alle Felder sind erforderlich", "Fehler", JOptionPane.ERROR_MESSAGE);
- else {
- String vorname = eingabeVorname.getText();
- String nachname = eingabenNachname.getText();
- String password = eingabenPassword.getText();
- String email = eingabeEmail.getText();
-
- BankSystem kunde = controller.addKunde(nachname, vorname, password, email);
- //JOptionPane.showMessageDialog(null, "Erfolgreich eingeloggt!", "Info", JOptionPane.INFORMATION_MESSAGE);
- fenster.dispose();
- }
-
- }
-
-
-
- @Override
- public void actionPerformed(ActionEvent e) {
- // TODO Auto-generated method stub
-
- }
-
- public static void main(String[] args) {
-
-
- }
-
-}
-
-
-
diff --git a/Programmierung2/src/BankSystemGUI/Test.java b/Programmierung2/src/BankSystemGUI/Test.java
deleted file mode 100644
index 7e6d7c5..0000000
--- a/Programmierung2/src/BankSystemGUI/Test.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package BankSystemGUI;
-
-import java.util.ArrayList;
-
-public class Test {
-
- public static void main(String[] args) {
-
- BankSystem b1 = new BankSystem("obai","albek","12345","obay@gmail.com");
- System.out.println(b1.toString());
- b1.einzahlung(100);
- System.out.println(b1.getKontoStand());
- System.out.println(b1.toString());
-//
-
- }
-
-}
diff --git a/Programmierung2/src/BankSystemGUI/Window.java b/Programmierung2/src/BankSystemGUI/Window.java
deleted file mode 100644
index 0b5d874..0000000
--- a/Programmierung2/src/BankSystemGUI/Window.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package BankSystemGUI;
-
-import java.awt.FlowLayout;
-import java.awt.GridLayout;
-
-import javax.swing.JFrame;
-
-public class Window extends JFrame {
-
- public JFrame window;
-
- Window(){
-
- setSize(700, 700);
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- setLayout(null);
- setVisible(true);
-
- }
-
-
-}
diff --git a/Programmierung2/src/BinaryTree/BinaryBaumList.java b/Programmierung2/src/BinaryTree/BinaryBaumList.java
deleted file mode 100644
index b44667a..0000000
--- a/Programmierung2/src/BinaryTree/BinaryBaumList.java
+++ /dev/null
@@ -1,453 +0,0 @@
-package BinaryTree;
-
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.Queue;
-
-public class BinaryBaumList {
- Node root;
-
- // -----------------------------------------------------------------
- private int findTreeHeightRekursiv(Node temp) {
- if (temp == null)
- return -1;
-
- int left_subTree = findTreeHeightRekursiv(temp.left);
- int right_subTree = findTreeHeightRekursiv(temp.right);
-
- if (left_subTree > right_subTree)
- return 1 + left_subTree;
-
- return 1 + right_subTree;
- }
-
- public int getHeight() {
- return findTreeHeightRekursiv(root);
- }
-
- // -----------------------------------------------------------------
- private void additerativ(int value) {
- // erzeuge eine neue knote
- Node newNode = new Node();
- // setze in knote einen Wert
- newNode.value = value;
- // ersetze left Knote auf Null
- newNode.left = null;
- // ersetze rechte Knote auf Null
- newNode.right = null;
-
- // wenn meine Liste leer ist
- if (root == null) {
- this.root = newNode;
- return;
- }
- // Wenn sie nicht leer!
-
- // temp root, um einfacher zu suchen
- Node temp = root;
- // da mein Temp bis null Knote läuft,
- // speichere ich seinen vorhängieren Wert
- Node merker = temp;
- while (temp != null) {
- // speichere temp vorhängieren Wert
- merker = temp;
- // wenn soll ich die linke Seite betrachten
- if (value < temp.value)
- temp = temp.left;
-
- // wenn nein soll ich die rechte Seite betrachten
- else
- temp = temp.right;
- }
- // so wenn ich ganz unten bin, soll ich sehen, ob ich die Knote rechts oder
- // linke einsetzen soll
- // Wenn ja, Knote auf der Linke Seite einsetzen
- if (value < merker.value)
- merker.left = newNode;
- // Wenn nein, Knote auf der rechte Seite einsetzen
- else
- merker.right = newNode;
- }
-
- private void addRekursiv(Node temp, int value) {
-
- // erzeuge eine neue knote
- Node newNode = new Node();
- // setze in knote einen Wert
- newNode.value = value;
- // ersetze left Knote auf Null
- newNode.left = null;
- // ersetze rechte Knote auf Null
- newNode.right = null;
- // falls die Liste leer ist!
- if (temp == null) {
- root = newNode;
- System.out.println("Die Root: " + root.value);
- return;
- }
- // Wenn ja die Linke Seite betrachten
- if (value < temp.value) {
- // Wenn mein temp die die Knote null erreicht
- if (temp.left == null) {
- // erstze die Knote
- temp.left = newNode;
- System.out.println("Linke Knote: " + temp.left.value);
- }
- // wenn mein Temp die Knote null nicht erreicht hat
- else {
- // laufe weiter
- addRekursiv(temp.left, value);
- }
-
- }
- // wenn die Value größer als die Root
- // also die rechte Seite betrachten
- else {
- if (temp.right == null) {
- // erstze die Knote
- temp.right = newNode;
- System.out.println("Rechte Knote: " + temp.right.value);
-
- } else {
- // laufe Weiter
- addRekursiv(temp.right, value);
- }
- }
- }
-
- public void addElement(int value) {
- // additerativ(value);
- addRekursiv(root, value);
-
- }
-
- // -----------------------------------------------------------------
- private int findMinRekursiv(Node temp) {
-
- if (temp.left == null)
- return temp.value;
-
- return findMinRekursiv(temp.left);
- }
-
- private int findMinIterativ(Node temp) {
-
- while (temp.left != null)
- temp = temp.left;
-
- return temp.value;
- }
-
- public int findMin() {
- return findMinRekursiv(root);
- // return findMinIterativ(root);
- }
- // -----------------------------------------------------------------
-
- // -----------------------------------------------------------------
- private int findMaxRekursiv(Node temp) {
- // // Wenn es kein rechtes Kind gibt, ist dies das Maximum
- if (temp.right == null)
- return temp.value;
-
- // Rekursiv weiter nach rechts gehen
- return findMaxRekursiv(temp.right);
- }
-
- private int findMaxIterativ(Node temp) {
- while (temp.right != null)
- temp = temp.right;
-
- return temp.value;
- }
-
- public int findMax() {
- // Es gibt keine Elemente
- if (root == null)
- return -1;
-
- // Wenn ja, dann hat root den Max Wert
- if (root.right == null)
- return root.value;
-
- // return findMaxRekursiv(root);
- return findMaxIterativ(root);
- }
-
- // -----------------------------------------------------------------
- private void printPreorder(Node temp) {// [root][left][right]
- if (temp == null)
- return;
- System.out.print(temp.value + " ");
- printPreorder(temp.left);
- printPreorder(temp.right);
- }
-
- private void printInorder(Node temp) {// [left][root][right]
- if (temp == null) {
- return;
- }
- printInorder(temp.left);
- System.out.print(temp.value + " ");
- printInorder(temp.right);
-
- }
-
- private void printPostoder(Node temp) {// [left][right][root]
- if (temp == null)
- return;
-
- printPreorder(temp.left);
- printPreorder(temp.right);
- System.out.print(temp.value + " ");
- }
-
- private void BreadthFirst() {
- // Erstelle eine Queue (Warteschlange) vom Typ LinkedList, um die Knoten für die
- // Level-Order Traversal zu speichern.
- Queue q1 = new LinkedList<>();
-
- // Füge den Wurzelknoten des Baums in die Warteschlange ein.
- // Dies ist der Startpunkt für die Breadth-First Traversal.
- q1.add(root);
-
- // Solange die Warteschlange nicht leer ist, gibt es noch Knoten zu besuchen.
- while (!q1.isEmpty()) {
- // Schau dir das erste Element in der Warteschlange an, ohne es zu entfernen.
- // Dies gibt dir den aktuellen Knoten, den du verarbeiten willst.
- Node temp = q1.peek();
-
- // Entferne das Element (den Knoten), das gerade verarbeitet wird, aus der
- // Warteschlange.
- // Dies verschiebt die Warteschlange und macht den nächsten Knoten zum
- // "Front"-Element.
- q1.remove();
-
- // Gib den Wert des aktuellen Knotens aus, den du gerade bearbeitest.
- // Dies ist der eigentliche Schritt, bei dem du die Traversal-Ergebnisse
- // ausgibst.
- System.out.print(temp.value + " ");
-
- // Wenn der linke Kindknoten existiert, füge ihn zur Warteschlange hinzu.
- // Dies stellt sicher, dass der linke Kindknoten später in der richtigen
- // Reihenfolge bearbeitet wird.
- if (temp.left != null)
- q1.add(temp.left);
-
- // Wenn der rechte Kindknoten existiert, füge ihn ebenfalls zur Warteschlange
- // hinzu.
- // Dies stellt sicher, dass der rechte Kindknoten nach dem linken Kindknoten
- // bearbeitet wird.
- if (temp.right != null)
- q1.add(temp.right);
- }
- }
-
- public void printDepth() {
- // printPreorder(root);
- // printInorder(root);
- BreadthFirst();
- }
- // -----------------------------------------------------------------
-
- /*
- * Löschen von Knoten:
- * - wenn eine Knote gelöscht werden soll, sollen erst 4 wichtige Eigenschaften betrachtet werden:
- * 1. ob die Knote überhaupt igrendwo im Baum liegt (suchen)
- * 2. ob die Knote ein Blatt (leaf Node) ist,das heißt die Knote hat weder rechte Knote noch linke Knote
- * 3. ob die Knote nur ein einziges Kind hat
- * 4. ob die Knote zwei Kinder hat
- * 4.1 hier entscheidt man, was er nehmen möchte:
- * . Inorder-Vorgänger: Suche nach dem größten Knoten im linken Teilbaum
- * . Inorder-Nachfolger: Suche nach dem kleinsten Knoten im rechten Teilbaum.
- *
- */
-
- // 1. Suchen
- private boolean searchNummberIterativ(int value) {
- if (root == null)
- return false;
-
- Node temp = root;
- while (temp.value != value) {
- if (value < temp.value && temp.left != null)
- temp = temp.left;
-
- else if (value >= temp.value && temp.right != null)
- temp = temp.right;
-
- else
- break;
- }
- if (temp.value == value)
- return true;
-
- return false;
-
- }
-
- private boolean searchNummberRekursiv(Node temp , int value) {
- if (temp == null)
- return false;
-
- if (temp.value == value)
- return true;
-
- else if(value < temp.value)
- return searchNummberRekursiv(temp.left , value);
-
- else
- return searchNummberRekursiv(temp.right , value);
-
- }
-
- public void searchNummber(int value) {
-
- if(searchNummberRekursiv(root,value))
- System.out.println("Ist gefunden: " + value);
- else
- System.out.println("Ist nicht gefunden!");
- }
-
-
- //2. löschen als leaf Node
- private void removeleafNode(int value) {
- if (!searchNummberIterativ(value)) {
- System.out.println("Die zahl befindet sich nicht im Baum!");
- return;
- }
- Node temp = root;
- Node merker = null;
- while( temp.value != value) {
- merker = temp;
- if (value < temp.value)
- temp = temp.left;
-
- else if (value >= temp.value)
- temp = temp.right;
- }
- if (temp.value < merker.value)
- merker.left = null;
-
- else
- merker.right = null;
- }
-
- //3. lösche eine Knote mit einem einzigen Kind
- private void removeWithOneChild(int value) {
- if (!searchNummberIterativ(value)) {
- System.out.println("Die zahl befindet sich nicht im Baum!");
- return;
- }
- Node temp = root;
- Node merker = null;
- while( temp.value != value) {
- merker = temp;
- if (value < temp.value)
- temp = temp.left;
-
- else if (value >= temp.value)
- temp = temp.right;
- }
-
- if (temp.left != null)
- merker.left = temp.left;
- else
- merker.right = temp.right;
-
- }
-
- //4. lösche eine Knote mit zwei Kindern
- private void removeWithTwoChildern(int value) {
- if (!searchNummberIterativ(value)) {
- System.out.println("Die zahl befindet sich nicht im Baum!");
- return;
- }
- Node temp = root;
- Node merker = null;
- while( temp.value != value) {
- if (value < temp.value)
- temp = temp.left;
-
- else if (value >= temp.value)
- temp = temp.right;
-
- merker = temp;
- }
- temp = temp.left;
- Node merker2 = temp;
- while(temp.right != null) {
- merker2 = temp;
- temp = temp.right;
- }
- merker.value = temp.value;
- merker2.right = null;
- }
-
- //2,3,4 Cases
- private void removWithAllCases(int value) {
- if (!searchNummberIterativ(value)) {
- System.out.println("Die zahl befindet sich nicht im Baum!");
- return;
- }
-
- Node temp = root;
- Node merker = null;
- while (temp.value != value) {
- merker = temp;
- if (value < temp.value)
- temp = temp.left;
-
- else if (value >= temp.value)
- temp = temp.right;
-
- }
-
- // Die knote ist ein Blatt (leaf Node)
- if (temp.left == null && temp.right == null) {
- if (merker == null)
- root =null;
- else if (merker.left == temp)
- merker.left = null;
- else
- merker.right = null;
- }
-
- // Die Knote hat genau ein Kind entweder links oder rechts
- if (temp.left == null || temp.right == null) {
- if (temp.left != null && temp.right == null)
- merker.left = temp.left;
-
- else
- merker.right = temp.right;
-
- return;
- }
-
- // Die Knote hat zwei Kinder
- else {
- merker = temp;
- // weg(1): nach links gehen und ganz nach unten rechts gehen
- temp = temp.left;
- Node merker2 = temp;
- while (temp.right != null) {
- merker2 = temp;
- temp = temp.right;
- }
- merker.value = temp.value;
- merker2.right = null;
- }
-
-
-
-
-
- }
- public void removNode(int value) {
- // removeleafNode(value);
- //removeWithOneChild(value);
- //removeWithTwoChildern(value);
- removWithAllCases(value);
- }
-
-}
diff --git a/Programmierung2/src/BinaryTree/Debugg Für Findhöhe Methode.pdf b/Programmierung2/src/BinaryTree/Debugg Für Findhöhe Methode.pdf
deleted file mode 100644
index 0be43b7..0000000
Binary files a/Programmierung2/src/BinaryTree/Debugg Für Findhöhe Methode.pdf and /dev/null differ
diff --git a/Programmierung2/src/BinaryTree/Debugg Für Lösche Knote.pdf b/Programmierung2/src/BinaryTree/Debugg Für Lösche Knote.pdf
deleted file mode 100644
index 3666bf9..0000000
Binary files a/Programmierung2/src/BinaryTree/Debugg Für Lösche Knote.pdf and /dev/null differ
diff --git a/Programmierung2/src/BinaryTree/Debugg Für Print Verfahren.pdf b/Programmierung2/src/BinaryTree/Debugg Für Print Verfahren.pdf
deleted file mode 100644
index 1202b15..0000000
Binary files a/Programmierung2/src/BinaryTree/Debugg Für Print Verfahren.pdf and /dev/null differ
diff --git a/Programmierung2/src/BinaryTree/JuintTeste.java b/Programmierung2/src/BinaryTree/JuintTeste.java
deleted file mode 100644
index 9161ad8..0000000
--- a/Programmierung2/src/BinaryTree/JuintTeste.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package BinaryTree;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.jupiter.api.Assertions.*;
-
-import org.junit.jupiter.api.Test;
-
-class JuintTeste {
-
- @Test
- void test() {
- BinaryBaumList b1 = new BinaryBaumList();
- b1.addElement(15);
- b1.addElement(6);
- b1.addElement(3);
- b1.addElement(9);
- b1.addElement(8);
- b1.addElement(20);
- b1.addElement(25);
-
- }
-
-}
diff --git a/Programmierung2/src/BinaryTree/Node.java b/Programmierung2/src/BinaryTree/Node.java
deleted file mode 100644
index 40800a9..0000000
--- a/Programmierung2/src/BinaryTree/Node.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package BinaryTree;
-
-public class Node {
- int value;
- Node left;
- Node right;
-
-}
diff --git a/Programmierung2/src/BinaryTree/Test.java b/Programmierung2/src/BinaryTree/Test.java
deleted file mode 100644
index fb13015..0000000
--- a/Programmierung2/src/BinaryTree/Test.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package BinaryTree;
-
-public class Test {
-
- public static void main(String[] args) {
- BinaryBaumList b1 = new BinaryBaumList();
- b1.addElement(50);
- b1.addElement(30);
- b1.addElement(70);
- b1.addElement(20);
- b1.addElement(40);
- b1.addElement(60);
- b1.addElement(80);
- b1.addElement(15);
- b1.addElement(22);
- b1.addElement(35);
- b1.addElement(45);
- b1.addElement(21);
- b1.addElement(25);
-
-
-
-
- System.out.print("[");
- b1.printDepth();
- System.out.print("]");
- System.out.println();
- b1.removNode(30);
- System.out.print("[");
- b1.printDepth();
- System.out.print("]");
-
- }
-
-
-
-
-
-}
diff --git a/Programmierung2/src/BinaryTree/Tree Data Structure.odt b/Programmierung2/src/BinaryTree/Tree Data Structure.odt
deleted file mode 100644
index 17b5035..0000000
Binary files a/Programmierung2/src/BinaryTree/Tree Data Structure.odt and /dev/null differ
diff --git a/Programmierung2/src/Collection/Collections.java b/Programmierung2/src/Collection/Collections.java
deleted file mode 100644
index edead70..0000000
--- a/Programmierung2/src/Collection/Collections.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package Collection;
-public class Collections {
-
- /* Collections: eine Sammlung von Werten, die vom gleichen Datentyp sein können oder auch nicht.
- * 1. Array:
- * - ist änderbar, hat fixed Size und indexed
- *
- */
-
-}
diff --git a/Programmierung2/src/Collection/Lists.java b/Programmierung2/src/Collection/Lists.java
deleted file mode 100644
index dba91b7..0000000
--- a/Programmierung2/src/Collection/Lists.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package Collection;
-
-
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Stack;
-import java.util.Vector;
-
-public class Lists {
- /*
- * - Duplikate von Elementen ist zulassen
- * - die Methoden alle KlassenLists sind ähnlich zueinander
- * - Stack Prinzip : LIFO (Last In, First Out)
- * - indexded Lists
- */
-
- public static void main(String[] args) {
- // Die vier Lists sind dynamischen Lists
- ArrayList arrayList = new ArrayList<>();
-
- LinkedList linkedList = new LinkedList<>();
-
- List vector = new Vector<>();
- // stack erbt von Vector
- Stack stack = new Stack<>();
-
- arrayList.add("arrayList");
- linkedList.add("LinkedList");
- vector.add("Vektor");
- stack.add("Stack");
- System.out.println(arrayList);
- System.out.println(linkedList);
- System.out.println(vector);
- System.out.println(stack);
- stack.push("pushed String");
- System.out.println(stack);
- stack.pop();
- System.out.println(stack);
- // gibt das oberste Element zurück
- stack.peek();
- System.out.println(stack);
-
- }
-
-}
diff --git a/Programmierung2/src/Collection/Queueslist.java b/Programmierung2/src/Collection/Queueslist.java
deleted file mode 100644
index 900013a..0000000
--- a/Programmierung2/src/Collection/Queueslist.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package Collection;
-
-
-import java.util.LinkedList;
-import java.util.PriorityQueue;
-import java.util.Queue;
-import java.util.Deque;
-import java.util.ArrayDeque;
-
-public class Queueslist {
- /*
- * - Queue Prinzip: FIFO (First In, First Out)
- * - dynamische nicht indexed lists
- *
- */
-
- public static void main(String[] args) {
- Queue queue = new LinkedList<>();
-
- //füge ein Element am Ende hinzu
- queue.add("1");
- System.out.println(queue);
- // füge ein Element am Ende hinzu
- queue.add("2");
- System.out.println(queue);
-
- // füge ein Element am Ende hinzu, gibt false zurück, wenn die Queue full ist
- queue.offer("3");
- System.out.println(queue);
-
-
-
- //Entfernt das erste Element in der Queue und gibt es zurück.
- queue.remove();
- //Entfernt das erste Element in der Queue und gibt es zurück. Gibt null zurück, wenn die Queue leer ist,
- queue.poll();
-
-
- /* Spezielle Queue-Typen:
- *
- * 1. PriorityQueue: ordnet ihre Elemente in einer natürlichen Ordnung oder nach einem angegebenen Comparator.
- */
-
- PriorityQueue priorityQueue = new PriorityQueue<>();
- priorityQueue.add(10);
- priorityQueue.add(20);
- priorityQueue.add(7);
-
- System.out.println(priorityQueue.poll()); // Ausgabe: 7 (niedrigster Wert zuerst)
- System.out.println(priorityQueue.poll()); // Ausgabe: 10 zweite niedrigster Wert
-
-
-
- /*
- * Spezielle Queue-Typen:
- *
- * 1. Deque (Double-Ended Queue): erlaubt das Hinzufügen und Entfernen von Elementen an beiden Enden der Queue.
- */
-
- Deque deque = new ArrayDeque<>();
-
- deque.addFirst("First");
- deque.addLast("Last");
- deque.addFirst("New First");
-
- System.out.println(deque.removeFirst()); // New First
- System.out.println(deque.removeLast()); // Last
-
- }
-
-}
diff --git a/Programmierung2/src/Collection/Setlists.java b/Programmierung2/src/Collection/Setlists.java
deleted file mode 100644
index dda19a6..0000000
--- a/Programmierung2/src/Collection/Setlists.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package Collection;
-
-
-import java.util.HashSet;
-import java.util.LinkedHashSet;
-import java.util.Set;
-import java.util.TreeSet;
-
-public class Setlists {
- /* - nicht indexed lists
- * - erlaubt keine doppelten Elemente
- * - HashSet, LinkedHashSet und TreeSet
- *
- */
- public static void main(String[] args) {
-
- /*
- * 1. HashSet:
- * - Verwendet eine HashMap intern, um die Elemente zu speichern
- * - Bietet konstante Zeit für die grundlegenden Operationen (add, remove, contains), solange die Hash-Funktion effizient ist.
- * - Die Reihenfolge der Elemente ist nicht garantiert.
- */
- Set hashSet = new HashSet<>();
- hashSet.add("Apple");
- hashSet.add("Banana");
- hashSet.add("Apple"); // wird ignoriert, da "Apple" bereits existiert
-
- System.out.println(hashSet); // Ausgabe: Apple,Banana
-
-
- /*
- * 2. LinkedHashSet:
- * - Verwendet eine verknüpfte Liste (LinkedList) zusammen mit einer HashMap, um die Elemente zu speichern.
- */
-
- Set linkedHashSet = new LinkedHashSet<>();
- linkedHashSet.add("Apple");
- linkedHashSet.add("Banana");
- linkedHashSet.add("Apple");
- System.out.println(linkedHashSet);// wird ignoriert, da "Apple" bereits existiert
-
-
- /*
- * 3. TreeSet:
- * - Verwendet eine selbstbalancierende Baumstruktur (Red-Black Tree), um die Elemente zu speichern.
- * - Elemente werden in natürlicher Ordnung (oder durch einen Comparator, falls angegeben) sortiert gespeichert.
- */
-
- Set treeSet = new TreeSet<>();
- treeSet.add("Banana");
- treeSet.add("Apple");
- treeSet.add("Apple");
-
- // die zweite Apple wird ignorieret und die Reihnfolge wird automatisch sortiert
- System.out.println(treeSet);
-
-
- }
-
-}
diff --git a/Programmierung2/src/FassadenKlasse/Fassade Entwurf.odt b/Programmierung2/src/FassadenKlasse/Fassade Entwurf.odt
deleted file mode 100644
index d13e5c8..0000000
Binary files a/Programmierung2/src/FassadenKlasse/Fassade Entwurf.odt and /dev/null differ
diff --git a/Programmierung2/src/FassadenKlasse/Fassadenklasse.java b/Programmierung2/src/FassadenKlasse/Fassadenklasse.java
deleted file mode 100644
index 22cc730..0000000
--- a/Programmierung2/src/FassadenKlasse/Fassadenklasse.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package FassadenKlasse;
-/*In Allgemein: Also zu verstehe ist, das Fassade-Muster hilft dabei
- * , die Komplexität eines Systems zu verbergen und es für den Benutzer einfacher zu machen
- * , mit dem System zu interagieren.
- */
-
- // Subsystem-Klasse für Speicherverwaltung
- class Speicher {
- public void initialisiereSpeicher() {
- System.out.println("Speicher wird initialisiert...");
- }
- }
-
- // Subsystem-Klasse für Prozessorverwaltung
- class Prozessor {
- public void initialisiereProzessor() {
- System.out.println("Prozessor wird initialisiert...");
- }
- }
-
- // Subsystem-Klasse für Eingabegeräteverwaltung
- class Eingabegeräte {
- public void initialisiereEingabegeräte() {
- System.out.println("Eingabegeräte werden initialisiert...");
- }
- }
-
- // Subsystem-Klasse für Netzwerkverwaltung
- class Netzwerk {
- public void initialisiereNetzwerk() {
- System.out.println("Netzwerk wird initialisiert...");
- }
- }
-
- // Fassade-Klasse, die eine einfache Schnittstelle bereitstellt
- class ComputersystemFassade {
- private Speicher speicher;
- private Prozessor prozessor;
- private Eingabegeräte eingabegeräte;
- private Netzwerk netzwerk;
-
- public ComputersystemFassade() {
- this.speicher = new Speicher();
- this.prozessor = new Prozessor();
- this.eingabegeräte = new Eingabegeräte();
- this.netzwerk = new Netzwerk();
- }
-
- // Die Fassade-Methode, die das System startet
- public void systemStarten() {
- System.out.println("Systemstart wird vorbereitet...");
- speicher.initialisiereSpeicher();
- prozessor.initialisiereProzessor();
- eingabegeräte.initialisiereEingabegeräte();
- netzwerk.initialisiereNetzwerk();
- System.out.println("System erfolgreich gestartet!");
- }
- }
-
- // Client-Code, der die Fassade verwendet
- public class Fassadenklasse {
- public static void main(String[] args) {
- // Der Client verwendet die Fassade, um das System zu starten
- ComputersystemFassade fassade = new ComputersystemFassade();
- fassade.systemStarten();
- }
- }
-
diff --git a/Programmierung2/src/GUIAnwendungen/BewegePanle.java b/Programmierung2/src/GUIAnwendungen/BewegePanle.java
deleted file mode 100644
index 3bb6c66..0000000
--- a/Programmierung2/src/GUIAnwendungen/BewegePanle.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package GUIAnwendungen;
-
-import java.awt.Color;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-
-import javax.swing.JFrame;
-import javax.swing.JPanel;
-import javax.swing.Timer;
-
-public class BewegePanle extends JPanel {
- private int yPosition = 0; // Startposition des Panels oben
- private final int speed = 1; // Geschwindigkeit der Bewegung
- private final int panelWidth = 100;
- private final int panelHeight = 100;
-
- public BewegePanle() {
- // Setze die Hintergrundfarbe des Panels
- setBackground(Color.red);
-
- // Timer initialisieren und starten
- //(int delay, ActionListener listener)
- Timer timer = new Timer(10, new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- // Aktualisiere die y-Position
- yPosition += speed;
-
- // Wenn das Panel unten angekommen ist, starte wieder von oben
- if (yPosition > 750 - panelHeight) {
- yPosition = 0; // Zurück an den oberen Rand
- }
-
- // Erzwinge das Neuzeichnen des Panels
- setBounds(0, yPosition, panelWidth, panelHeight);
- }
- });
-
- timer.start(); // Timer starten
- }
-
- public static void main(String[] args) {
- // Erstelle das Hauptfenster
- JFrame frame = new JFrame();
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setSize(750, 750);
- frame.setLayout(null); // Deaktiviere das Layout-Management
-
- // Erstelle eine Instanz von Jpanel und füge sie dem Fenster hinzu
- BewegePanle panel = new BewegePanle();
- panel.setBounds(0, 0, 100, 100); // Initiale Position und Größe
- frame.add(panel);
-
- // Mache das Fenster sichtbar
- frame.setVisible(true);
- }
- }
-
diff --git a/Programmierung2/src/GUIAnwendungen/Borderlayout.java b/Programmierung2/src/GUIAnwendungen/Borderlayout.java
deleted file mode 100644
index 5d72e5f..0000000
--- a/Programmierung2/src/GUIAnwendungen/Borderlayout.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package GUIAnwendungen;
-import java.awt.BorderLayout;
-import java.awt.Color;
-import java.awt.Dimension;
-import javax.swing.JFrame;
-import javax.swing.JPanel;
-
-public class Borderlayout {
- /*
- * steuert die Positionierung von Komponenten in einem Container
- * Z.B:
- * NORTH (oben)
- SOUTH (unten)
- EAST (rechts)
- WEST (links)
- CENTER (Mitte)
-
- */
-
- public static void main(String[] args) {
-
- // Erstelle ein Fenster (JFrame-Objekt)
- JFrame frame = new JFrame();
-
- // Setzt das Layout des Rahmens auf BorderLayout mit einem Abstand von 10 Pixeln zwischen den Komponenten
- frame.setLayout(new BorderLayout(10,10));
-
- // Legt die Größe des Fensters fest (Breite: 750 Pixel, Höhe: 750 Pixel)
- frame.setSize(750, 750);
-
- // Stellt sicher, dass das Programm beendet wird, wenn das Fenster geschlossen wird
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
-
- // Setzt den Titel des Fensters
- frame.setTitle("Mein erstes Fenster");
-
- // Macht das Fenster sichtbar
- frame.setVisible(true);
-
- // Erstelle fünf JPanel-Objekte, die als Container für andere Komponenten dienen können
- JPanel panel1 = new JPanel();
- JPanel panel2 = new JPanel();
- JPanel panel3 = new JPanel();
- JPanel panel4 = new JPanel();
- JPanel panel5 = new JPanel();
-
- // Setzt den Hintergrund von panel1 auf Rot
- panel1.setBackground(Color.red);
- // Setzt den Hintergrund von panel2 auf Grün
- panel2.setBackground(Color.green);
- // Setzt den Hintergrund von panel3 auf Gelb
- panel3.setBackground(Color.yellow);
- // Setzt den Hintergrund von panel4 auf Magenta
- panel4.setBackground(Color.magenta);
- // Setzt den Hintergrund von panel5 auf Blau
- panel5.setBackground(Color.blue);
-
- // Legt die bevorzugte Größe von panel1 fest (100x100 Pixel)
- panel1.setPreferredSize(new Dimension(100,100));
- // Legt die bevorzugte Größe von panel2 fest (100x100 Pixel)
- panel2.setPreferredSize(new Dimension(100,100));
- // Legt die bevorzugte Größe von panel3 fest (100x100 Pixel)
- panel3.setPreferredSize(new Dimension(100,100));
- // Legt die bevorzugte Größe von panel4 fest (100x100 Pixel)
- panel4.setPreferredSize(new Dimension(100,100));
- // Legt die bevorzugte Größe von panel5 fest (100x100 Pixel)
- panel5.setPreferredSize(new Dimension(100,100));
-
- // Fügt panel1 im Bereich NORTH des BorderLayouts hinzu
- frame.add(panel1, BorderLayout.NORTH);
- // Fügt panel2 im Bereich WEST des BorderLayouts hinzu
- frame.add(panel2, BorderLayout.WEST);
- // Fügt panel3 im Bereich EAST des BorderLayouts hinzu
- frame.add(panel3, BorderLayout.EAST);
- // Fügt panel4 im Bereich SOUTH des BorderLayouts hinzu
- frame.add(panel4, BorderLayout.SOUTH);
- // Fügt panel5 im Bereich CENTER des BorderLayouts hinzu
- frame.add(panel5, BorderLayout.CENTER);
-
- }
-
-}
diff --git a/Programmierung2/src/GUIAnwendungen/Flowlayout.java b/Programmierung2/src/GUIAnwendungen/Flowlayout.java
deleted file mode 100644
index 7e512c7..0000000
--- a/Programmierung2/src/GUIAnwendungen/Flowlayout.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package GUIAnwendungen;
-import java.awt.BorderLayout;
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.FlowLayout;
-
-import javax.swing.JButton;
-import javax.swing.JFrame;
-import javax.swing.JPanel;
-
-public class Flowlayout {
-
- /*
- * - Ordent die Komponenten innerhalb eines Containers in einer einzigen Zeile
- * - Ausrichtung: Die Komponenten können linksbündig (LEFT), zentriert (CENTER), oder rechtsbündig (RIGHT) ausgerichtet werden.
- * - hier wird auch angezeigt, wie man button auf Panel paltziert
- * Hinweis: FlowLayout bietet keine Möglichkeit, eine einzelne Komponente manuell zu platzieren.
- */
-
- public static void main(String[] args) {
-
- // Erstelle ein JFrame-Fenster
- JFrame fenster = new JFrame();
-
- // Beendet das Programm beim Schließen des Fensters
- fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
-
- // Legt die Größe des Fensters auf 500x500 Pixel fest
- fenster.setSize(500, 500);
-
- // Setzt das Layout des Fensters auf FlowLayout mit zentrierter Ausrichtung und
- // Abständen von 10 Pixeln
- fenster.setLayout(new FlowLayout(FlowLayout.CENTER, 10, 10));
-
- // Erstelle ein JPanel mit vordefinierter Größe 250x250 Pixel und hellgrauem
- // Hintergrund
- JPanel panel1 = new JPanel();
- panel1.setPreferredSize(new Dimension(250, 250));
- panel1.setBackground(Color.lightGray);
-
- // Setzt das Layout von panel1 ebenfalls auf FlowLayout
- panel1.setLayout(new FlowLayout());
-
- // Füge dem Panel 9 Buttons hinzu, die in einer Zeile oder mehreren Zeilen
- // angeordnet werden
- panel1.add(new JButton("1"));
- panel1.add(new JButton("2"));
- panel1.add(new JButton("3"));
- panel1.add(new JButton("4"));
- panel1.add(new JButton("5"));
- panel1.add(new JButton("6"));
- panel1.add(new JButton("7"));
- panel1.add(new JButton("8"));
- panel1.add(new JButton("9"));
-
- // Füge das Panel dem JFrame hinzu
- fenster.add(panel1);
-
- // Macht das Fenster sichtbar
- fenster.setVisible(true);
- }
-
-
-}
diff --git a/Programmierung2/src/GUIAnwendungen/GridBagLayoutExample.java b/Programmierung2/src/GUIAnwendungen/GridBagLayoutExample.java
deleted file mode 100644
index 8e4a3d1..0000000
--- a/Programmierung2/src/GUIAnwendungen/GridBagLayoutExample.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package GUIAnwendungen;
-
-import javax.swing.*;
-import java.awt.*;
-import java.awt.BorderLayout;
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.FlowLayout;
-import java.awt.GridLayout;
-
-import javax.swing.JButton;
-import javax.swing.JFrame;
-import javax.swing.JPanel;
-public class GridBagLayoutExample {
- /*- manuell positionien von Elementen
- * - in viel flexibleres Layout-Manager, bei dem du die Position,
- * Größe und Ausdehnung (über mehrere Zeilen/Spalten) der einzelnen Komponenten präzise steuern kannst.
- * - Du kannst einzelne Komponenten unterschiedlich groß machen, sie über mehrere Zellen spannen und Abstände festlegen.
- */
- public static void main(String[] args) {
- JFrame frame = new JFrame("GridBagLayout Example");
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setLayout(null);
- JButton button1 = new JButton("Button1");
- frame.add(button1);
-
- button1.setBounds(0, 0, 120, 30);
- frame.setSize(800, 800);
- frame.setVisible(true);
- }
-}
diff --git a/Programmierung2/src/GUIAnwendungen/Gridlayout.java b/Programmierung2/src/GUIAnwendungen/Gridlayout.java
deleted file mode 100644
index e13ef94..0000000
--- a/Programmierung2/src/GUIAnwendungen/Gridlayout.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package GUIAnwendungen;
-
-import java.awt.BorderLayout;
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.FlowLayout;
-import java.awt.GridLayout;
-
-import javax.swing.JButton;
-import javax.swing.JFrame;
-import javax.swing.JPanel;
-
-public class Gridlayout {
-
- public static void main(String[] args) {
-
- // Erstelle ein JFrame-Fenster
- JFrame fenster = new JFrame();
-
- // Beendet das Programm beim Schließen des Fensters
- fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
-
- // Legt die Größe des Fensters auf 500x500 Pixel fest
- fenster.setSize(500, 500);
- fenster.setLayout(new GridLayout(4,3,10,4));
-
- fenster.add(new JButton("1"));
- fenster.add(new JButton("2"));
- fenster.add(new JButton("3"));
- fenster.add(new JButton("4"));
- fenster.add(new JButton("5"));
- fenster.add(new JButton("6"));
- fenster.add(new JButton("7"));
- fenster.add(new JButton("8"));
- fenster.add(new JButton("9"));
-
- fenster.setVisible(true);
-
-
- }
-
-}
diff --git a/Programmierung2/src/GUIAnwendungen/Jframe.java b/Programmierung2/src/GUIAnwendungen/Jframe.java
deleted file mode 100644
index 911b4de..0000000
--- a/Programmierung2/src/GUIAnwendungen/Jframe.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package GUIAnwendungen;
-
-import java.awt.Color;
-
-import javax.swing.JFrame;
-
-public class Jframe {
-
- /*
- * - mit der Klasse(JFrame) erzeugen wir ein Fenster
- */
-
- public static void main(String[] args) {
-
- // Erstelle ein Fenster
- JFrame frame = new JFrame();
-
- //setVisible(boolean): gibt an, ob mein Fenster sichtbar ist oder nicht
- frame.setVisible(true);
-
- //setSize(width, height)
- frame.setSize(420, 500);
-
- // setzte einen Überschrift für mein Fenster
- frame.setTitle("Mein erstes Fenster");
-
- // Schließe das Fenster richtig zu
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
-
- // Mein Fenster kann ab jetzt nicht mehr vergößert oder verkleinert werden
- frame.setResizable(false);
-
- //gib das Fenster eine Farbe
- frame.getContentPane().setBackground(Color.green);
- //oder rgb Farbe
- frame.getContentPane().setBackground(new Color(0,0,100));
-
- }
-
-}
diff --git a/Programmierung2/src/GUIAnwendungen/Jpanel.java b/Programmierung2/src/GUIAnwendungen/Jpanel.java
deleted file mode 100644
index 7512f43..0000000
--- a/Programmierung2/src/GUIAnwendungen/Jpanel.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package GUIAnwendungen;
-
-import java.awt.Color;
-import java.awt.Font;
-
-import javax.swing.BorderFactory;
-import javax.swing.ImageIcon;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.border.Border;
-
-// mit Jpanel kann man alle grafischen Bauelemente einsetzen
-public class Jpanel {
-
- public static void main(String[] args) {
- JPanel panel = new JPanel();
- panel.setBackground(Color.red);
- // setze eine Grafisches Bauelement (int x, int y, int width, int height)
- panel.setBounds(100, 100, 10, 10);
-
-
- JFrame frame = new JFrame();
-
- //stellt sicher, dass keine automatische Positionierung und Größenanpassung erhalten
- frame.setLayout(null);
-
- // setSize(width, height)
- frame.setSize(750, 750);
-
- // setzte einen Überschrift für mein Fenster
- frame.setTitle("Mein erstes Fenster");
-
- //setVisible(boolean): gibt an, ob mein Fenster sichtbar ist oder nicht
- frame.setVisible(true);
-
- frame.add(panel);
-
-
- }
-
-}
\ No newline at end of file
diff --git a/Programmierung2/src/GUIAnwendungen/KeyBindingsExample.java b/Programmierung2/src/GUIAnwendungen/KeyBindingsExample.java
deleted file mode 100644
index 9cc9cdd..0000000
--- a/Programmierung2/src/GUIAnwendungen/KeyBindingsExample.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package GUIAnwendungen;
-
-import javax.swing.*;
-import java.awt.event.ActionEvent;
-
-public class KeyBindingsExample extends JFrame {
- public KeyBindingsExample() {
- setTitle("KeyBindings Beispiel");
- setSize(300, 200);
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
-
- // Panel erstellen
- JPanel panel = new JPanel();
- add(panel);
-
- // KeyBinding hinzufügen: 'A' Taste
- panel.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("A"), "keyA");
- panel.getActionMap().put("keyA", new AbstractAction() {
- @Override
- public void actionPerformed(ActionEvent e) {
- System.out.println("Taste 'A' wurde gedrückt (KeyBindings).");
- }
- });
-
- setVisible(true);
- }
-
- public static void main(String[] args) {
- new KeyBindingsExample();
- }
-}
diff --git a/Programmierung2/src/GUIAnwendungen/Labels.java b/Programmierung2/src/GUIAnwendungen/Labels.java
deleted file mode 100644
index c2af5d3..0000000
--- a/Programmierung2/src/GUIAnwendungen/Labels.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package GUIAnwendungen;
-
-import java.awt.Color;
-import java.awt.Font;
-
-import javax.swing.BorderFactory;
-import javax.swing.ImageIcon;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.border.Border;
-
-/*
- * JLabel = ist ein GUI Anzeiger für hinzufügen von Texten und Bildern
- */
-
-public class Labels {
-
- public static void main(String[] args) {
- // Erstelle eine Label
- JLabel label = new JLabel();
-
- // Erstelle einen Border für das Fenster
- Border b1 = BorderFactory.createLineBorder(Color.GREEN,5);
-
- // füge den Text auf dem Fenster hinzu
- label.setText("Hall Welt");
-
- /*
- * - Mit diesen zwei Methode positioniere ich den Text auf dem Bild
- * 1. setHorizontalTextPosition(JLabel.CENTER); set Text LEFT,CENTER,RIGHT auf dem Bild
- * 2. label.setVerticalTextPosition(JLabel.TOP);set Text TOP,CENTER, DOWN auf dem Bild
- * - man kann auch integer Werte eingeben
- */
- label.setHorizontalTextPosition(JLabel.CENTER); // Horozional
- label.setVerticalTextPosition(JLabel.TOP); // vertikal
-
- // gib für den Schrifft eine Farbe aus der Klasse Color ein
- // entweder:
- label.setForeground(Color.GREEN);
- // oder:
- label.setForeground(new Color(0,0,100));
-
- //gib Schriftart aus der Klasse Font ein
- label.setFont(new Font("MV Boli",Font.PLAIN,20));
-
- // verschiebe den Text nach beliebg Position
- label.setIconTextGap(20);
-
- // setze eine Farbe für Background
- label.setBackground(Color.black);
- label.setOpaque(true);
-
- //zeige den Border auf dem Fenster
- label.setBorder(b1);
-
-
- //füge ein Bild hinzu
- ImageIcon image = new ImageIcon("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\GUIAnwendungen\\Test.jpg");
- label.setIcon(image);
-
-
- // Erstelle ein Fenster
- JFrame frame = new JFrame();
- // setSize(width, height)
- frame.setSize(500, 500);
-
- // setzte einen Überschrift für mein Fenster
- frame.setTitle("Mein erstes Fenster");
-
- //setVisible(boolean): gibt an, ob mein Fenster sichtbar ist oder nicht
- frame.setVisible(true);
-
- // zeige den Text auf dem Fenster
- frame.add(label);
-
-
-
-
-
-
- }
-
-}
diff --git a/Programmierung2/src/GUIAnwendungen/ShowMessage.java b/Programmierung2/src/GUIAnwendungen/ShowMessage.java
deleted file mode 100644
index d623bcd..0000000
--- a/Programmierung2/src/GUIAnwendungen/ShowMessage.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package GUIAnwendungen;
-
-import javax.swing.JFrame;
-import javax.swing.JOptionPane;
-
-public class ShowMessage {
-
- /*
- * - erstellt einfache Dialogfenster (Pop-up-Fenster)
- * - können verwendet werden, um Nachrichten anzuzeigen, Eingaben vom Benutzer zu erfassen oder den Benutzer vor bestimmten Aktionen zu warnen.
- * - durch null kann man viele sachen ersetzen:
- * . Fenster
- * . Jpanel
- * . public MeinFenster() {
- super("Mein Fenster");
- JOptionPane.showMessageDialog(this, "Beispiel.", "Titel", JOptionPane.WARNING_MESSAGE);
-
- . etc...
- }
- */
-
- public static void main(String[] args) {
- // Erstelle ein JFrame-Fenster mit dem Titel "Mein Fenster"
- JFrame fenster = new JFrame("Mein Fenster");
-
- // Zeige eine Fehlermeldung in einem Dialog an, zentriert relativ zu 'fenster'
- JOptionPane.showMessageDialog(fenster, "Beispiel.", "title", JOptionPane.ERROR_MESSAGE);
-
- // Zeige eine Informationsmeldung in einem Dialog an, zentriert auf dem Bildschirm
- JOptionPane.showMessageDialog(null, "Beispiel..", "title", JOptionPane.INFORMATION_MESSAGE);
-
- // Zeige eine Frage in einem Dialog an, zentriert auf dem Bildschirm
- JOptionPane.showMessageDialog(null, "Beispiel.", "title", JOptionPane.QUESTION_MESSAGE);
-
- // Zeige eine Warnung in einem Dialog an, zentriert auf dem Bildschirm
- JOptionPane.showMessageDialog(null, "Beispiel.", "title", JOptionPane.WARNING_MESSAGE);
-
- /*
- * Zeige einen Bestätigungsdialog an, um den Benutzer zu fragen,
- * ob er fortfahren möchte (Ja/Nein/Abbrechen).
- * Antwort wird in 'antwort' gespeichert.
- */
- int antwort = JOptionPane.showConfirmDialog(null, "Möchten Sie fortfahren?");
- if (antwort == JOptionPane.YES_OPTION) {
- // Benutzer hat 'Ja' gewählt
- System.out.println("Benutzer hat 'Ja' gewählt.");
- } else if (antwort == JOptionPane.NO_OPTION) {
- // Benutzer hat 'Nein' gewählt
- System.out.println("Benutzer hat 'Nein' gewählt.");
- } else if (antwort == JOptionPane.CANCEL_OPTION) {
- // Benutzer hat 'Abbrechen' gewählt
- System.out.println("Benutzer hat 'Cancel' gewählt.");
- }
-
- // Zeige einen Eingabedialog an, um den Benutzer nach seinem Namen zu fragen
- String eingabe = JOptionPane.showInputDialog("Geben Sie Ihren Namen ein:");
- // Gib den eingegebenen Namen in der Konsole aus
- System.out.println("Benutzername: " + eingabe);
- }
- }
-
-
-
diff --git a/Programmierung2/src/GUIAnwendungen/Test.jpg b/Programmierung2/src/GUIAnwendungen/Test.jpg
deleted file mode 100644
index 0c7ff29..0000000
Binary files a/Programmierung2/src/GUIAnwendungen/Test.jpg and /dev/null differ
diff --git a/Programmierung2/src/GUIAnwendungen/TextEingaben.java b/Programmierung2/src/GUIAnwendungen/TextEingaben.java
deleted file mode 100644
index e72c254..0000000
--- a/Programmierung2/src/GUIAnwendungen/TextEingaben.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package GUIAnwendungen;
-
-import java.awt.Dimension;
-import java.awt.FlowLayout;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import javax.swing.JButton;
-import javax.swing.JFrame;
-import javax.swing.JTextField;
-
-/*Beschreibung das Problem:
- * Instanzvariablen sollten verwendet werden, wenn du sicherstellen möchtest, dass Variablen wie JButton und JTextField in der gesamten Klasse (und in actionPerformed) sichtbar sind.
- Der Konstruktor der Klasse wird verwendet, um die GUI-Komponenten zu initialisieren und das Fenster aufzubauen.
- Die main-Methode ist static und dient dazu, die Anwendung zu starten, indem sie eine Instanz der Klasse erstellt.
- Anonyme innere Klassen sind eine praktische Möglichkeit, wenn du einfache Event-Handling-Logik direkt in der main-Methode implementieren möchtest, ohne eine zusätzliche Klasse oder Instanzmethoden zu erstellen.
- *
- */
-
-public class TextEingaben extends JFrame implements ActionListener {
- // Instanzvariablen
- private JTextField textField;
- private JButton button1;
-
- // Konstruktor
- public TextEingaben() {
- // Initialisiere das Textfeld und den Button
- textField = new JTextField();
- textField.setPreferredSize(new Dimension(240, 40));
-
- button1 = new JButton("Submit");
- button1.setPreferredSize(new Dimension(240, 40));
- button1.addActionListener(this); // `this` verweist auf das aktuelle Objekt der Klasse
-
- // Setze das Layout und füge die Komponenten hinzu
- setLayout(new FlowLayout());
- add(textField);
- add(button1);
-
- // Konfiguriere das JFrame
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- setSize(500, 500);
- setVisible(true);
- }
-
- // Die Methode wird aufgerufen, wenn der Button gedrückt wird
- @Override
- public void actionPerformed(ActionEvent e) {
- if (e.getSource() == button1) {
- System.out.println("Hallo " + textField.getText());
- }
- }
-
- public static void main(String[] args) {
- // Erstelle eine Instanz der Klasse, wodurch der Konstruktor aufgerufen wird
- new TextEingaben();
- }
-}
-
diff --git a/Programmierung2/src/GUIAnwendungen/jbutton.java b/Programmierung2/src/GUIAnwendungen/jbutton.java
deleted file mode 100644
index 832a87c..0000000
--- a/Programmierung2/src/GUIAnwendungen/jbutton.java
+++ /dev/null
@@ -1,95 +0,0 @@
-package GUIAnwendungen;
-import java.awt.Color;
-import java.awt.Font;
-
-import javax.swing.BorderFactory;
-import javax.swing.ImageIcon;
-import javax.swing.JButton;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.border.Border;
-import javax.swing.*;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-
-/*
- * - ActionListener ist ein (marker)Interface Klasse,
- * die nur eine abstrakte Methode hat, die mit drücken auf Button reagiert
- *
- * Also Das Kochrezept:
- * 1. Button erstellen: JButton button = new JButton("Text");
- * 2. ActionListener implementieren: Implementiere ActionListener, um die Funktionalität zu definieren.
- * 3. ActionListener zum Button hinzufügen:
- * 3.1 button.addActionListener(new ActionListener() { ... });
- * 3.2 oder mit separater Methode: button.addActionListener(e -> deineMethode());
- */
-public class jbutton implements ActionListener {
-
- public static void main(String[] args) {
- //1.
- JButton button = new JButton();
- // x y width height
- button.setBounds(100,100,200, 50);
- button.setText("Click me");
- button.addActionListener(null);
-
- // 2. Hinzufügen des ActionListeners zum Button
- JLabel label = new JLabel();
-
- /*
- * Position und Größe des Labels eingeben warum?
- * weil ich frame.setLayout(null); aktiviert habe
- */
- label.setBounds(150, 50, 100, 50);
- /*
- * new ActionListener() ist nicht das Erzeugen einer Instanz des Interfaces selbst,
- * sondern das Erstellen einer Instanz einer anonymen Klasse, die das ActionListener-Interface implementiert.
- */
- button.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- // Dies ist die Aktion, die ausgeführt wird, wenn der Button geklickt wird
- clicked(label);
- }
- });
-
-
-
-
- // Erstelle ein Fenster
- JFrame frame = new JFrame();
-
- //stellt sicher, dass keine automatische Positionierung und Größenanpassung erhalten
- frame.setLayout(null);
-
- // setSize(width, height)
- frame.setSize(750, 750);
-
- // setzte einen Überschrift für mein Fenster
- frame.setTitle("Mein erstes Fenster");
-
- //setVisible(boolean): gibt an, ob mein Fenster sichtbar ist oder nicht
- frame.setVisible(true);
- frame.add(label);
- frame.add(button);
- // andere Möglichkeit, button auf Fenster zu zeigen
- // frame.add(new JButton("name"))
-
-
- }
-
-
- public static void clicked(JLabel label) {
- label.setText("Hall Welt");
- }
-
-
- @Override
- public void actionPerformed(ActionEvent e) {
- // TODO Auto-generated method stub
-
- }
-
-
-}
diff --git a/Programmierung2/src/JunitTest/Einführung.java b/Programmierung2/src/JunitTest/Einführung.java
deleted file mode 100644
index a8311e1..0000000
--- a/Programmierung2/src/JunitTest/Einführung.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package JunitTest;
-
-public class Einführung {
- /*White-Box && Black-Box was ist das?
- * - Black-Box-Test: Du prüfst nur die Eingaben und Ausgaben, ohne den Code zu sehen oder zu verstehen. Es geht nur darum, ob die Software das Richtige tut.
- * - White-Box-Test: Du schaust dir den Code genau an und prüfst, ob jede Zeile und jedes Detail korrekt funktioniert. Hier verstehst du den Code und testest ihn gezielt.
- */
- public static void main(String[] args) {
-
- }
-
- public int add(int a, int b) {
- return a+b;
- }
-
-}
diff --git a/Programmierung2/src/JunitTest/EinführungTest.java b/Programmierung2/src/JunitTest/EinführungTest.java
deleted file mode 100644
index ae95c59..0000000
--- a/Programmierung2/src/JunitTest/EinführungTest.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package JunitTest;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-
-import org.junit.jupiter.api.Test;
-
-public class EinführungTest {
-
- @Test
- public void testAdd() {
- Einführung e1 = new Einführung();
- assertEquals(4, e1.add(2, 2));
- }
-}
diff --git a/Programmierung2/src/JunitTest/Skript Automatisiert testen (1).pdf b/Programmierung2/src/JunitTest/Skript Automatisiert testen (1).pdf
deleted file mode 100644
index d55f331..0000000
Binary files a/Programmierung2/src/JunitTest/Skript Automatisiert testen (1).pdf and /dev/null differ
diff --git a/Programmierung2/src/Linked_List/ElementList.java b/Programmierung2/src/Linked_List/ElementList.java
deleted file mode 100644
index 04f0fde..0000000
--- a/Programmierung2/src/Linked_List/ElementList.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package Linked_List;
-
-public class ElementList {
- Node head;
-
- // ADD Methoden
- public void addAtIndex(int value, int index) {
- // Erstelle eine neue Knote
- Node newNode = new Node();
- // setze drin einen Wert
- newNode.value = value;
- // falls meine Liste leer ist!
- if (head == null) {
- head = newNode;
- return;
- }
-
- if (index == 0) {
- newNode.next = head;
- head = newNode;
- return;
- }
-
- Node temp = head;
- for (int i = 0; i < index - 1 && temp.next != null ; i++)
- temp = temp.next;
-
- newNode.next = temp.next;
- temp.next = newNode;
- }
- public void addLast(int value) {
- // Erstelle eine neue Knote
- Node newNode = new Node();
- // setze drin einen Wert
- newNode.value = value;
- // falls meine Liste leer ist!
- if (head == null) {
- head = newNode;
- return;
- }
- // falls nicht!
- Node temp = head;
- while (temp.next != null)
- temp = temp.next;
-
- temp.next = newNode;
- }
- public void addFirst(int value) {
- // Erstelle eine neue Knote
- Node newNode = new Node();
- // setze drin einen Wert
- newNode.value = value;
-
- if (head == null)
- head = newNode;
-
- /*
- * newNode.next = null, aber ist jetzt nicht mehr null,
- * weil es jetzt gleich head;
- */
- newNode.next = head;
- head = newNode;
-
- }
- //---------------------------------------------------
-
-
- public void printList() {
- if (head == null)
- return;
-
- Node temp =head;
- System.out.print("[");
- while(temp != null) {
- System.out.print(temp.value + " ");
- temp = temp.next;
- }
- System.out.print("]");
-
- }
-
-}
diff --git a/Programmierung2/src/Linked_List/Node.java b/Programmierung2/src/Linked_List/Node.java
deleted file mode 100644
index d95e9b2..0000000
--- a/Programmierung2/src/Linked_List/Node.java
+++ /dev/null
@@ -1,6 +0,0 @@
-package Linked_List;
-
-public class Node {
- int value;
- Node next;
-}
diff --git a/Programmierung2/src/Linked_List/Test.java b/Programmierung2/src/Linked_List/Test.java
deleted file mode 100644
index f78335e..0000000
--- a/Programmierung2/src/Linked_List/Test.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package Linked_List;
-
-public class Test {
-
- public static void main(String[] args) {
- ElementList e1 = new ElementList();
- e1.addLast(1);
- e1.addLast(2);
- e1.addLast(3);
- e1.addLast(5);
- e1.addAtIndex(10,2);
- e1.printList();
- }
-
-}
diff --git a/Programmierung2/src/MVC_Desighn/MVC-Designmuster.odt b/Programmierung2/src/MVC_Desighn/MVC-Designmuster.odt
deleted file mode 100644
index 1b8f6a4..0000000
Binary files a/Programmierung2/src/MVC_Desighn/MVC-Designmuster.odt and /dev/null differ
diff --git a/Programmierung2/src/MVC_Desighn/Person_Daten.java b/Programmierung2/src/MVC_Desighn/Person_Daten.java
deleted file mode 100644
index cf9c4a7..0000000
--- a/Programmierung2/src/MVC_Desighn/Person_Daten.java
+++ /dev/null
@@ -1,91 +0,0 @@
-package MVC_Desighn;
-
-// Modell, oder domain
-public class Person_Daten {
- private String name;
- private int alter;
-
- public Person_Daten(String name, int alter) {
- this.name = name;
- setAlter(alter);
- }
-
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public int getAlter() {
- return alter;
- }
- public void setAlter(int alter) {
- if (alter > 18)
- this.alter = alter;
- else
- System.out.println("Sie sind sehr jung");
- }
-
-
- @Override
- public String toString() {
- return "Person_Daten [name=" + name + ", alter=" + alter + "]";
- }
-
- public static void main(String[] args) {
-
- Person_Daten p1 = new Person_Daten("obai" , 22);
- GUI_DatenView v1 = new GUI_DatenView();
-
- Controller_DatenPerson c1 = new Controller_DatenPerson(p1,v1);
-
- c1.updateView();
- c1.setPersonName("omar");
- c1.updateView();
-
- }
-}
-
-
-
-//View oder GUI
-class GUI_DatenView {
-
- public void printDatenPerson(String name, int alter) {
- System.out.println("GUI_DatenView [name=" + name + ", alter=" + alter + "]");
- }
-
-}
-
-// Controller
-class Controller_DatenPerson{
- Person_Daten modell;
- GUI_DatenView view;
-
- public Controller_DatenPerson(Person_Daten modell, GUI_DatenView view) {
- this.modell = modell;
- this.view = view;
- }
-
- public String getPersonName() {
- return this.modell.getName();
- }
-
- public void setPersonName(String name) {
- modell.setName(name);
- }
-
- public int getPersonAlter() {
- return this.modell.getAlter();
- }
-
- public void updateView() {
-
- view.printDatenPerson(modell.getName(),modell.getAlter());
- }
-
-}
-
-
-
-
diff --git a/Programmierung2/src/MVC_Desighn/Person_GUI.java b/Programmierung2/src/MVC_Desighn/Person_GUI.java
deleted file mode 100644
index 735deda..0000000
--- a/Programmierung2/src/MVC_Desighn/Person_GUI.java
+++ /dev/null
@@ -1,156 +0,0 @@
-package MVC_Desighn;
-
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-
-import javax.swing.JButton;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JTextField;
-
-// modell
-class Person {
- private String name;
- private int age;
-
- // Konstruktor
- public Person(String name, int age) throws IllegalArgumentException {
- this.setName(name);
- this.setAge(age);
- }
-
- // Getter für Name
- public String getName() {
- return name;
- }
-
- // Setter für Name
- public void setName(String name) {
- this.name = name;
- }
-
- // Getter für Alter
- public int getAge() {
- return age;
- }
-
- // Setter für Alter
- public void setAge(int age) throws IllegalArgumentException {
- if (age <= 18) {
- throw new IllegalArgumentException("Das Alter muss größer als 18 sein.");
- }
- this.age = age;
- }
-
-
-}
-
-//view
-public class Person_GUI {
- private JFrame frame;
- private JTextField nameTextField;
- private JButton updateButton;
- private JLabel nameLabel;
- private JLabel ageLabel;
-
- public Person_GUI() {
- // Setup des Frames
- frame = new JFrame("Person Details");
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setSize(300, 200);
- frame.setLayout(null);
-
- // Name Label
- nameLabel = new JLabel("Name:");
- nameLabel.setBounds(10, 20, 80, 25);
- frame.add(nameLabel);
-
- // Age Label
- ageLabel = new JLabel("Alter:");
- ageLabel.setBounds(10, 50, 80, 25);
- frame.add(ageLabel);
-
- // Name Textfeld
- nameTextField = new JTextField(20);
- nameTextField.setBounds(100, 20, 165, 25);
- frame.add(nameTextField);
-
- // Update Button
- updateButton = new JButton("Name ändern");
- updateButton.setBounds(100, 80, 165, 25);
- frame.add(updateButton);
-
- // Frame sichtbar machen
- frame.setVisible(true);
- }
-
- public String getNameInput() {
- return nameTextField.getText();
- }
-
- public void setPersonDetails(String name, int age) {
- nameLabel.setText("Name: " + name);
- ageLabel.setText("Alter: " + age);
- }
-
- public void addUpdateButtonListener(ActionListener listener) {
- updateButton.addActionListener(listener);
- }
-
- public static void main(String[] args) {
-
- // Erstellen des Modells
- Person model = new Person("Max Mustermann", 20);
-
- // Erstellen der Ansicht
- Person_GUI view = new MVC_Desighn.Person_GUI();
-
- // Erstellen des Controllers
- PersonController controller = new PersonController(model, view);
-
-
-}
-}
-
-class PersonController {
- private Person model;
- private Person_GUI view;
-
- public PersonController(Person model, Person_GUI view) {
- this.model = model;
- this.view = view;
-
- // Initialisieren der View mit den aktuellen Modelldaten
- this.view.setPersonDetails(model.getName(), model.getAge());
-
- // Hinzufügen eines ActionListeners zum Button
- this.view.addUpdateButtonListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- String newName = view.getNameInput();
- setPersonName(newName);
- updateView();
- }
- });
- }
-
- public void setPersonName(String name) {
- model.setName(name);
- }
-
- public String getPersonName() {
- return model.getName();
- }
-
- public void setPersonAge(int age) {
- model.setAge(age);
- }
-
- public int getPersonAge() {
- return model.getAge();
- }
-
- public void updateView() {
- view.setPersonDetails(model.getName(), model.getAge());
- }
-}
diff --git a/Programmierung2/src/Teste/kopieArray.java b/Programmierung2/src/Teste/kopieArray.java
deleted file mode 100644
index f65de84..0000000
--- a/Programmierung2/src/Teste/kopieArray.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package Teste;
-
-public class kopieArray {
-
- public static void main(String[] args) {
- /*
- * das ein falsches Verfahren, um ein Array in einem anderen Array
- * zu koopieren, in dem Fall kopieArray ist ein RefrenzVariable, die auf das selbe Array zeigt
- * also wir haben nur ein Array und auf diese Array zeigen zwei RefrenzVariable
- */
- int[] orgArray = {1,2,3,4,5};
- int[] kopieArray = orgArray;
-
- /*
- * Richtige Kopie von Array
- */
- int[] richtigeKopieArray = new int[orgArray.length];
- for (int i = 0; i not fully Abstraction
- * 2. Interface => fully Abstraction
- *
- * -----------------------------------------
- *
- * Die abstrakte Klasse:
- *
- * Deklaration als abstract: Eine abstrakte Klasse muss mit dem Schlüsselwort abstract deklariert werden
- * abstrakte Klassen in Java müssen vererbt werden, damit ihre abstrakten Methoden implementiert werden können
- * Da abstrakte Klassen nicht instanziiert werden können (man kann also keine Objekte direkt von ihnen erstellen)
- * Die Abstrakte klasse kann eine Abstrakte methode haben aber soll nicht
- * Die Abstrakte klasse können final methods haben
- * Die Abstrakte klasse können constructors und static methods haben
- * Setter und getter sind gültig
- *
- * - Die Unterklasse:
- * die nicht abstrakte Unterklassen muss alle abstrakte methoden implementieren!
- * die abstrakte Unterklassen muss nicht alle abstrakte methoden implementieren!
- *----------------------------------------
- *
- *Die abstrakte Methode:
- *warum Abstrakte Methods? damit jede Unterklasse diese Methoden implementiert
- *wenn wir eine abstrakte Methode erzeugen, soll ihre Klasse auch Abstrakt sein.
- *Abstrakte Methoden können von der abstrakten Klasse nicht implemntiert werden.
- *Abstrakte Methoden können nur von Unterklassen mit @Override implementiert werden.
- *Abstrakte Methoden können ohne und mit Rückabe wert sein.
- *Statiche und private Methodes können nicht abstrakt sein warum?
- *weil satatic und private gehören nur der Klasse
- */
-
- protected abstract void fahre();
- public abstract int count();
-
-
-}
diff --git a/Programmierung2/src/oop/Abstraction/Auto.java b/Programmierung2/src/oop/Abstraction/Auto.java
deleted file mode 100644
index c73631e..0000000
--- a/Programmierung2/src/oop/Abstraction/Auto.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package oop.Abstraction;
-
-public abstract class Auto {
-
- double höhe;
- double gewicht;
- int anzahlDerRäder;
-
-
-
- public Auto(double höhe, double gewicht, int anzahlDerRäder) {
- this.höhe = höhe;
- this.gewicht = gewicht;
- this.anzahlDerRäder = anzahlDerRäder;
- }
-
- abstract void autopilot(); // automatischen Fahren
-
- abstract void streamingService();
-
- abstract void parkingSensors();
-
-
-
-}
diff --git a/Programmierung2/src/oop/Abstraction/Auto2.java b/Programmierung2/src/oop/Abstraction/Auto2.java
deleted file mode 100644
index f6c8b69..0000000
--- a/Programmierung2/src/oop/Abstraction/Auto2.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package oop.Abstraction;
-
-
-public class Auto2 {
-
- class Test{
-
-
- }
- @FunctionalInterface
- public interface Test2{
- int berechne(int a, int b);
-
- }
-
-
-
-
-}
diff --git a/Programmierung2/src/oop/Abstraction/Hatchback.java b/Programmierung2/src/oop/Abstraction/Hatchback.java
deleted file mode 100644
index d54d496..0000000
--- a/Programmierung2/src/oop/Abstraction/Hatchback.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package oop.Abstraction;
-
-public class Hatchback extends Auto {
-
-
- public Hatchback(double höhe, double gewicht, int anzahlDerRäder) {
- super(höhe, gewicht, anzahlDerRäder);
- }
-
- @Override
- void autopilot() {
- System.out.println(" Hatchback : autopilot");
- }
-
- @Override
- void streamingService() {
- System.out.println("Hatchback : streamingService");
-
- }
-
- @Override
- void parkingSensors() {
- System.out.println(" Hatchback : parkingSensors");
-
- }
-
-
-
-}
diff --git a/Programmierung2/src/oop/Abstraction/MarkerInterface.java b/Programmierung2/src/oop/Abstraction/MarkerInterface.java
deleted file mode 100644
index 4cda615..0000000
--- a/Programmierung2/src/oop/Abstraction/MarkerInterface.java
+++ /dev/null
@@ -1,6 +0,0 @@
-package oop.Abstraction;
-
-public class MarkerInterface {
- // Keine Methoden oder Konstanten
-
-}
diff --git a/Programmierung2/src/oop/Abstraction/NestedInterface.java b/Programmierung2/src/oop/Abstraction/NestedInterface.java
deleted file mode 100644
index af778b2..0000000
--- a/Programmierung2/src/oop/Abstraction/NestedInterface.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package oop.Abstraction;
-
-public interface NestedInterface {
- void test();
-
- interface InnerInterface {
- default void test2() {
-
- System.out.print("Innerinterface");
- }
-
- }
-
-}
diff --git a/Programmierung2/src/oop/Abstraction/SUV.java b/Programmierung2/src/oop/Abstraction/SUV.java
deleted file mode 100644
index 9b76cc0..0000000
--- a/Programmierung2/src/oop/Abstraction/SUV.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package oop.Abstraction;
-
-public class SUV extends Auto {
-
-
-
- public SUV(double höhe, double gewicht, int anzahlDerRäder) {
- super(höhe, gewicht, anzahlDerRäder);
- }
-
- @Override
- void autopilot() {
- System.out.println(" SUV : autopilot");
- }
-
- @Override
- void streamingService() {
- System.out.println(" SUV : streamingService");
-
- }
-
- @Override
- void parkingSensors() {
- System.out.println("SUV : parkingSensors");
-
- }
-
-
-}
diff --git a/Programmierung2/src/oop/Abstraction/Test.java b/Programmierung2/src/oop/Abstraction/Test.java
deleted file mode 100644
index 22f6afc..0000000
--- a/Programmierung2/src/oop/Abstraction/Test.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package oop.Abstraction;
-
-public class Test {
-
- public static void main(String[] args) {
-
- // Auto SUV1 = new Auto(); Verboten da die Auto Klasse Abstrakt ist!
- // Auto SUV1 = new SUV(); das ist gültig
-
- }
-
-}
diff --git a/Programmierung2/src/oop/AnonymousInnerClass/AnonymousInnerClass.java b/Programmierung2/src/oop/AnonymousInnerClass/AnonymousInnerClass.java
deleted file mode 100644
index 950f0c8..0000000
--- a/Programmierung2/src/oop/AnonymousInnerClass/AnonymousInnerClass.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package oop.AnonymousInnerClass;
-
-public class AnonymousInnerClass {
- /*
- * - ist ohne Name definiert und werden direkt in der Instanziierung (manin Methode) erstellt.
- * - Verwendung: Sie werden verwendet,um Schnittstellen oder abstrakte Klassen zu implementieren
- * und deren Methoden zu überschreiben, ohne eine separate, benannte Klasse zu erstellen.
- * - kann entweder extends klasse oder implements interface aber (nicht beids gleichzeitig)
- * - ist für methoden und Konstruktoren
- * - Anonymous Inner Class können kein Konstruktoren haben, weil sie ohne Name sind!
- * - Anonymous kann mehreren Methoden überschreiben
- * - können über definiert werden, wo Klasseninstanzen benötigt werden
- * - die Methoden und die Variablen innerhalb der Anonymous sind nur innerhalb Anonymous sichtbar
- * oder ich muss z.b anstatt (Konstruktor test = new Konstruktor()) => var test = new Konstruktor()
- * das ermöglicht mir die methoden und die Variable die in Anonymous in außen zu verweden
- * - anonyme innere Klassen können verschachtelt werden also in anonyme ein anonyme
- * - können keine statischen Variablen oder Methoden haben, das sie keinen Name haben
- * - Private Elemente sind erlaubt aber sind nur innerhalb der anonyme innere Klassen sichtbar
- *
- * Warum benötigen wir sowas?
- * für Einmalige Verwendung: Sie sind ideal für einmalige Implementierungen,
- * wie z.B. Event-Handler, Callbacks oder Threads.
- *
- *
- */
-
-}
diff --git a/Programmierung2/src/oop/AnonymousInnerClass/Interface.java b/Programmierung2/src/oop/AnonymousInnerClass/Interface.java
deleted file mode 100644
index 67bcaec..0000000
--- a/Programmierung2/src/oop/AnonymousInnerClass/Interface.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package oop.AnonymousInnerClass;
-
-public class Interface {
-
- public interface Showable{
-
- void print();
- }
-
- // methode übernimmt ein Interface
- static void display(Showable s) {
-
- s.print();
- }
-
- public static void main (String[] args) {
- // Anonymous Inner Class mit methode
- display(new Showable() {
-
- @Override
- public void print() {
- System.out.print("von der Methode");
- }
- });
-
-
-
- // Anonymous Inner Class mit interface
- Showable showable = new Showable() {
-
- @Override
- public void print() {
-
- System.out.println("Hallo welt");
- }
- };
-
- showable.print();
- }
-}
diff --git a/Programmierung2/src/oop/AnonymousInnerClass/Konstruktor.java b/Programmierung2/src/oop/AnonymousInnerClass/Konstruktor.java
deleted file mode 100644
index ae83138..0000000
--- a/Programmierung2/src/oop/AnonymousInnerClass/Konstruktor.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package oop.AnonymousInnerClass;
-
-public class Konstruktor {
-
- public Konstruktor() {
- System.out.println("das ist Konstruktor");
- }
-
- // Methode enthält Anonymous Inner Class
- public static void main() {
- new Konstruktor() {
-
- public static void print() {
- System.out.println("main methode");
- }
-
- int x = 5;
- @Override
- public void testMethod() {
-
- System.out.println("main methode");
-
- }
-
-
- };
- }
-
- public void testMethod() {
-
- System.out.println("Das ist in der klasse");
- }
-
-
- int x = 2;
-
- public static void main(String[] str) {
-
- // Konstruktor wird aufgerufen und aussgegeben
- Konstruktor test = new Konstruktor() {
-
- public void print() {
- System.out.println("extra methode");
- //x = 3; Änderung ist verboten
- }
-
- int x = 5;
- @Override
- public void testMethod() {
-
- System.out.println("Das ist in der main" + x);
- print();// innere Methode
- }
-
-
- };
-
- test.testMethod();
-
- // Konstruktor wird aufgerufen und aussgegeben
- var test2 = new Konstruktor() {
-
- public static void print() {
- System.out.println("extra methode");
- }
-
- int x = 5;
- @Override
- public void testMethod() {
-
- System.out.println("Das ist in der main" + x);
-
- }
-
-
- };
- // aufruf der innere methode
- //test2.print();
- test2.main();
-
- }
-
-}
diff --git a/Programmierung2/src/oop/AnonymousInnerClass/RewardClass.java b/Programmierung2/src/oop/AnonymousInnerClass/RewardClass.java
deleted file mode 100644
index b6288fc..0000000
--- a/Programmierung2/src/oop/AnonymousInnerClass/RewardClass.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package oop.AnonymousInnerClass;
-
-public class RewardClass {
- public void rewardMethode() {
-
- System.out.println("Deine Belohnung ist 10€.");
- }
-
-
-}
diff --git a/Programmierung2/src/oop/AnonymousInnerClass/Test.java b/Programmierung2/src/oop/AnonymousInnerClass/Test.java
deleted file mode 100644
index 240f952..0000000
--- a/Programmierung2/src/oop/AnonymousInnerClass/Test.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package oop.AnonymousInnerClass;
-
-public class Test {
-
- public static void main(String[] args) {
-
- RewardClass mietarebiter1 = new RewardClass();
- RewardClass mietarebiter2 = new RewardClass();
- RewardClass mietarebiter3 = new RewardClass()
- // Anonymous Inner Class
- {
-
- @Override
- public void rewardMethode() {
-
- System.out.println("Deine Belohnung ist 20€.");
- }
- };
-
- mietarebiter1.rewardMethode();//Belohnung ist 10€
- mietarebiter2.rewardMethode();//Belohnung ist 10€
-
- mietarebiter3.rewardMethode();//Belohnung ist 20€
-
- /* wenn ich für den dritten mietarebiter3 20€ statt 10€ geben möchte!
- * dann habe ich 2 möglichkeiten
- *
- * 1. erben: ich kann eine Klasse erstellen die meine (RewardClass) erbt
- * und ihre Methode mit 20€ überschreibt!
- *
- * 2.Anonymous Inner Class
- */
- }
-
-}
diff --git a/Programmierung2/src/oop/Aufgaben/BankKonto.java b/Programmierung2/src/oop/Aufgaben/BankKonto.java
deleted file mode 100644
index c7aa3bc..0000000
--- a/Programmierung2/src/oop/Aufgaben/BankKonto.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package oop.Aufgaben;
-
-public class BankKonto {
-
- private String name;
- private double amount;
- private int kontoNummer;
- private static int counter = 1;
-
- public BankKonto() {
-
-
- }
-
-
-
- public BankKonto( String name,double amount) {
- this.kontoNummer = counter;
- this.name = name;
- this.amount = amount;
- counter++;
- bounus();
- willkommen(this.name);
- }
-
-
- public static void willkommen(String n) {
-
- BankKonto b1 = new BankKonto();
- b1.name = n;
- System.out.println("Willkommen: " + b1.name);
- }
-
-
- public double bounus() {
-
-
- return this.amount += 5;
- }
-
- public void einzahlung(double wert) {
-
- this.amount += wert;
-
- }
-
- public void auszahlung(double wert) {
-
- if (wert <= this.amount)
- this.amount -= wert;
- else
- System.out.println("Das Geld reicht nicht aus!");
- }
-
- public void checkKonto() {
-
- System.out.println("Ihre Stand ist: " + this.amount);
- }
-
- public String toString() {
-
- return "Kontoname = " + this.name + " nummer = " + kontoNummer + " Satand = " + this.amount;
- }
-
-}
diff --git a/Programmierung2/src/oop/Aufgaben/Kreis.java b/Programmierung2/src/oop/Aufgaben/Kreis.java
deleted file mode 100644
index 0db1c3f..0000000
--- a/Programmierung2/src/oop/Aufgaben/Kreis.java
+++ /dev/null
@@ -1,59 +0,0 @@
-package oop.Aufgaben;
-
-public class Kreis {
-
- private double radius;
- private String color;
-
-
- // Konstruktor mit zwei Parametern
- public Kreis(double radius, String color) {
- this.radius = radius;
- this.color = color;
- }
-
- // Konstruktor mit einem Parameter (radius), Standardfarbe wird zugewiesen
- public Kreis(double radius) {
- this.radius = radius; // Standardfarbe ist "weiß"
- }
-
-
- public void setRadius(double radius) {
-
- this.radius =radius ;//this (unterscheidet zwishcne Parameter und Attribute)
- }
-
- public double getRadius() {
-
- return radius;
- }
-
- public void setColor(String color) {
-
- this.color = color; // this (unterscheidet zwishcne Parameter und Attribute)
- }
-
- public String getColor() {
-
- return color;
- }
-
-
- public double getFlaeche() {
-
- return radius * radius * Math.PI;
- }
-
- public double getUmfang() {
-
- return 2 * radius * Math.PI;
-
- }
-
- public String toString() {
-
- return "Kreis:" + getFlaeche() + " " + getUmfang() ;
- }
-
-
-}
diff --git a/Programmierung2/src/oop/Aufgaben/Mitarbeiter.java b/Programmierung2/src/oop/Aufgaben/Mitarbeiter.java
deleted file mode 100644
index a2d2f54..0000000
--- a/Programmierung2/src/oop/Aufgaben/Mitarbeiter.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package oop.Aufgaben;
-
-public class Mitarbeiter {
-
-
- private static int id = 0;
- protected int idMitarbeiter;
- protected String name;
-
-
- public Mitarbeiter() {
-
- }
-
- public Mitarbeiter(String name) {
- this.idMitarbeiter = ++id;
- this.name = name;
-
- }
-
- public void setName(String name) {
-
- this.name = name;
- }
-
- public String getName() {
-
- return this.name;
- }
-
-
- public String toString() {
-
- return "ID: " + id + " Name: " + this.name;
- }
-
-
-}
diff --git a/Programmierung2/src/oop/Aufgaben/Personalverwaltung.java b/Programmierung2/src/oop/Aufgaben/Personalverwaltung.java
deleted file mode 100644
index 4ef8398..0000000
--- a/Programmierung2/src/oop/Aufgaben/Personalverwaltung.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package oop.Aufgaben;
-
-import java.util.ArrayList;
-
-public class Personalverwaltung {
-
- ArrayList mitarbeiterliste = new ArrayList();
-
-
-
- public void add(Mitarbeiter mitarbeiter) {
-
- mitarbeiterliste.add(mitarbeiter);
- }
-
-
- public void remove(Mitarbeiter mitarbeiter) {
-
- mitarbeiterliste.remove(mitarbeiter);
- }
-
-
-
-
- public void listMitarbeiter(){
-
- for (Mitarbeiter mitarbeiter : mitarbeiterliste) {
- System.out.println(mitarbeiter);
- }
- }
-
-}
diff --git a/Programmierung2/src/oop/Einführung/Einführung.java b/Programmierung2/src/oop/Einführung/Einführung.java
deleted file mode 100644
index 6f32c1a..0000000
--- a/Programmierung2/src/oop/Einführung/Einführung.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package oop.Einführung;
-
-public class Einführung {
-
- String name;
- int maxSpeed;
- double price;
- int model;
-
-
- void setName(String n) {
- name = n;
- }
-
- String getName() {
-
- return name;
- }
-
- void setModel(int mod) {
- if (mod >= 2016)
- model = mod;
- else
- System.out.println("Nei geht nicht!");
- }
-
- int getModel() {
-
- return model;
- }
-}
diff --git a/Programmierung2/src/oop/Enumeration/EnumMethods.java b/Programmierung2/src/oop/Enumeration/EnumMethods.java
deleted file mode 100644
index fd8c8b7..0000000
--- a/Programmierung2/src/oop/Enumeration/EnumMethods.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package oop.Enumeration;
-import java.util.EnumSet;
-
-public enum EnumMethods {
- MONTAG, DIENSTAG, MITTWOCH, DONNERSTAG, FREITAG, SAMSTAG, SONNTAG;
-
-
-
- public static void main(String[] args) {
- // gibt mir die Index meiner Konstante zurück
- System.out.println(EnumMethods.DIENSTAG.ordinal());
-
- //vergleicht zwei enum-Konstanten basierend auf ihrer Reihenfolge
- System.out.println(EnumMethods.DIENSTAG.compareTo(EnumMethods.DONNERSTAG));
-
- // gibt true oder false zurück
- System.out.println(EnumMethods.DIENSTAG.toString() == "DIENSTAG");
-
- // gibt true oder false zurück
- System.out.println(EnumMethods.DIENSTAG.name() == "DIENSTAG");
-
- // gibt der Name der Kosntant zurück
- System.out.println(EnumMethods.valueOf("DONNERSTAG"));
-
- // gibt mir alle Konstante zurück
- for (EnumMethods test: EnumMethods.values()) {
- System.out.print(test + " ");
- if (test == EnumMethods.DIENSTAG)
- System.out.print(EnumMethods.values() + " ");
- }
- System.out.println(EnumMethods.values()[0] + "Einzelene Konstant");
-
- System.out.println();
-
- /*
- * Enumset::
- */
-
- // gibt alle Werte die enums aus
- EnumSet days = EnumSet.allOf(EnumMethods.class);
- System.out.println(days);
-
- // gibt nur Werte ,die ich eingebe
- EnumSet day = EnumSet.of(EnumMethods.DIENSTAG, EnumMethods.FREITAG);
- System.out.println(day);
-
- // gibt nur einmal Diesntag aus!
- EnumSet day1 = EnumSet.of(EnumMethods.DIENSTAG, EnumMethods.DIENSTAG);
- System.out.println(day);
-
- // gibt mir von Konstante to Kosntnate zurück!
- EnumSet range = EnumSet.range(EnumMethods.DIENSTAG, EnumMethods.FREITAG);
- System.out.println(range);
-
-
- EnumSet noneOf = EnumSet.noneOf(EnumMethods.class);
- noneOf.add(DIENSTAG);
- noneOf.addAll(noneOf);
- noneOf.remove(DIENSTAG);
- noneOf.removeAll(noneOf);
- System.out.println(noneOf);
-
- }
-
-}
diff --git a/Programmierung2/src/oop/Enumeration/Enumeration.java b/Programmierung2/src/oop/Enumeration/Enumeration.java
deleted file mode 100644
index b6070a1..0000000
--- a/Programmierung2/src/oop/Enumeration/Enumeration.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package oop.Enumeration;
-
-public class Enumeration {
-
- /*Enum was ist?
- * - repräsentiert eine Gruppe von Konstanten
- * ,die public, static und final sind und die immer großegeschrieben werden sollen
- * - Deklariert mit dem Schlüsselwort enum z.b(public enum klassenname)
- * - Jede Konstante wird durch Kommas getrennt und am Ende optional mit einem Semikolon abgeschlossen.
- * - kann als Datentyp verwendet werden
- * - Kann in switch-Anweisungen verwendet werden.
- * - kann Felder, Konstruktoren (ohne public) und Methoden enthalten.
- * - Konstruktoren sind immer privat oder paketprivat (d.h. sie können nicht public sein)
- * ,die Dienen zur Initialisierung der Felder.
- * - Enums können abstrakte Methoden enthalten, aber es sollen alle Kosntanten sie implementieren (siehe Wochentage class).
- * - Enums können Interfaces implementieren.
- * - Enums können eigene Methoden und Überschreibungen von toString(), equals(), hashCode(), etc. enthalten.
- * - Enums können keine anderen Klassen erweitern und auch nicht von anderen Klassen erben
- * - Enums können interface implementieren
- *
- */
-
-}
diff --git a/Programmierung2/src/oop/Enumeration/Numbers.java b/Programmierung2/src/oop/Enumeration/Numbers.java
deleted file mode 100644
index 5e5f21e..0000000
--- a/Programmierung2/src/oop/Enumeration/Numbers.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package oop.Enumeration;
-
-public enum Numbers{
-
- ONE,TWO,THREE; // Semikolon ist optional
-
- /*
- * ONE TOW THREE sind Objekte in die unten stehenden Klassen
- * Konstante ONE wir präsentiert durch:
- * Class Numbers{
- * public static final Numbers ONE = new Numbers();
- * }
- *
- * und TWO auch so..
- * Class Numbers{
- * public static final Numbers TWO = new Numbers();
- * }
- * und THREE auch so..
- *
- */
-
-
- public void print() {
-
- System.out.println("dasd");
- }
-
-}
diff --git a/Programmierung2/src/oop/Enumeration/Order.java b/Programmierung2/src/oop/Enumeration/Order.java
deleted file mode 100644
index 5c6c298..0000000
--- a/Programmierung2/src/oop/Enumeration/Order.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package oop.Enumeration;
-
-public class Order {
-
- public enum OrderStatus{
-
- PENDING,
- PREPARING,
- COMPLETED,
- DELIVERING,
- CANCELED;
- }
-
-
-
- // Attribute mit enum Objekt
- private OrderStatus status;
-
- public boolean check() {
-
- if (getStatus() == status.COMPLETED)
- return true;
-
- return false;
- }
-
- public OrderStatus getStatus() {
- return status;
- }
-
- public void setStatus(OrderStatus status) {
- this.status = status;
- }
-
-
-
-}
diff --git a/Programmierung2/src/oop/Enumeration/OrderTest.java b/Programmierung2/src/oop/Enumeration/OrderTest.java
deleted file mode 100644
index 4594a88..0000000
--- a/Programmierung2/src/oop/Enumeration/OrderTest.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package oop.Enumeration;
-
-public class OrderTest {
-
- public static void main(String[] args) {
- //ordinal globale methode gibt mir die Index meiner enum Konstanten
- System.out.println(Order.OrderStatus.CANCELED.ordinal());
-
- Order order1 = new Order();
- order1.setStatus(Order.OrderStatus.DELIVERING);
- System.out.println(order1.check());
- // z.b für Tracking der bestellung
- System.out.print(order1.getStatus());
-
- }
-
-}
diff --git a/Programmierung2/src/oop/Enumeration/Test.java b/Programmierung2/src/oop/Enumeration/Test.java
deleted file mode 100644
index 1eb085f..0000000
--- a/Programmierung2/src/oop/Enumeration/Test.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package oop.Enumeration;
-
-public class Test {
-
- public static void main(String[] args) {
- // Numbers val1 = new Numbers(); verboten da enum Konstruktoren private ist
- // und ONE automatisch static ist
- Numbers val1 = Numbers.ONE; // TWO ist ein Objekt
-
- switch (val1) {
-
- case ONE: System.out.println("1");
- break;
-
- case TWO: System.out.println("2");
- break;
-
- case THREE: System.out.println("3");
- break;
- }
-
- val1.print();
-
- System.out.println(Wochentage.MONTAG.getStatus());
- Wochentage.MONTAG.testmethode();
- System.out.println(Wochentage.DIENSTAG.getStatus());
- Wochentage.DIENSTAG.testmethode();
-
-
-
-
-
- }
-
-}
diff --git a/Programmierung2/src/oop/Enumeration/Wochentage.java b/Programmierung2/src/oop/Enumeration/Wochentage.java
deleted file mode 100644
index 80e2f3e..0000000
--- a/Programmierung2/src/oop/Enumeration/Wochentage.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package oop.Enumeration;
-
-public enum Wochentage {// erbt von abstract class (enum)
- // wenn eine Konstante einen Konstruktor hat, dann sollen Alle Konstaten sollen einen Konstruktor haben
- /*
- * MONTAG("Arbeitstag"),
- * DIENSTAG("Arbeitstag");
- */
-
- // Alle Konstanten sollen die abstrakte Methoden implementieren
- MONTAG ("Konstruktor: Montag") {
- @Override
- public void testmethode() {
- System.out.println("Montag");
- }
-
- },
- DIENSTAG ("Konstruktor: Diesnstag"){
- @Override
- public void testmethode() {
- System.out.println("Diesnstag");
- }
- };
- String status;
-
- Wochentage(String status){
- this.status = status;
- }
-
- public String getStatus() {
- return status;
- }
-
- public void setStatus(String status) {
- this.status = status;
- }
-
- public abstract void testmethode();
-
-
-}
diff --git a/Programmierung2/src/oop/ExceptionHandling/Bildschirmfoto vom 2024-08-06 12-04-58.png b/Programmierung2/src/oop/ExceptionHandling/Bildschirmfoto vom 2024-08-06 12-04-58.png
deleted file mode 100644
index a5ed8dc..0000000
Binary files a/Programmierung2/src/oop/ExceptionHandling/Bildschirmfoto vom 2024-08-06 12-04-58.png and /dev/null differ
diff --git a/Programmierung2/src/oop/ExceptionHandling/Bildschirmfoto vom 2024-08-06 12-07-28.png b/Programmierung2/src/oop/ExceptionHandling/Bildschirmfoto vom 2024-08-06 12-07-28.png
deleted file mode 100644
index 7d7a4aa..0000000
Binary files a/Programmierung2/src/oop/ExceptionHandling/Bildschirmfoto vom 2024-08-06 12-07-28.png and /dev/null differ
diff --git a/Programmierung2/src/oop/ExceptionHandling/CheckedException.java b/Programmierung2/src/oop/ExceptionHandling/CheckedException.java
deleted file mode 100644
index 4cfe17c..0000000
--- a/Programmierung2/src/oop/ExceptionHandling/CheckedException.java
+++ /dev/null
@@ -1,78 +0,0 @@
-package oop.ExceptionHandling;
-
-import java.io.FileNotFoundException;
-import java.io.FileReader;
-import java.io.IOException;
-
-public class CheckedException {
-
- public static void main(String[] args) {
- readFile("D:\\Test.txt");
-
- }
-
- static void readFile(String filePath) {
- FileReader reader = null;
- // hier der Compiler zeigt mir eine Error und zwingt micht eine try-catch Block zu erstellen
- try {
- reader = new FileReader(filePath);// resource
- System.out.println("File Inhalt: ");
-
- int r = 0;
- while((r = reader.read()) != -1) {
- System.out.print((char) r);
- }
- }catch(FileNotFoundException e) {
-
- System.out.println(e);
-
- }catch(IOException e) {
- System.out.println(e);
- }finally {
- try {
- reader.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
-
- // try() mit resources, hier benötigt man finally block nicht
- static void readFile2(String filePath) {
- try (FileReader reader = new FileReader(filePath);) {
- System.out.println("File Inhalt: ");
-
- int r = 0;
- while((r = reader.read()) != -1) {
- System.out.print((char) r);
- }
- }catch(FileNotFoundException e) {
-
- System.out.println(e);
-
- }catch(IOException e) {
- System.out.println(e);
- }
- }
-
-
-
- // try() mit mehrere resources, hier benötigt man auch finally block nicht
- static void readFile3(String filePath) {
- try (FileReader reader = new FileReader(filePath); FileReader reader2 = new FileReader(filePath)) {
- System.out.println("File Inhalt: ");
-
- int r = 0;
- while((r = reader.read()) != -1) {
- System.out.print((char) r);
- }
- }catch(FileNotFoundException e) {
-
- System.out.println(e);
-
- }catch(IOException e) {
- System.out.println(e);
- }
- }
-
-}
diff --git a/Programmierung2/src/oop/ExceptionHandling/ExceptionHandling.java b/Programmierung2/src/oop/ExceptionHandling/ExceptionHandling.java
deleted file mode 100644
index d457359..0000000
--- a/Programmierung2/src/oop/ExceptionHandling/ExceptionHandling.java
+++ /dev/null
@@ -1,102 +0,0 @@
-package oop.ExceptionHandling;
-
-public class ExceptionHandling {
-
- /*Was ist das?
- * - Hauptidee ist, dass falls der Programmer oder der User einen Fehler gemacht hat, läuft das Programm trotzdem weiter!
- * - An exception ist ein unerwünschtes oder unerwartetes Ereignis
- * ,das während der Ausführung eines Programms zur Laufzeit auftritt.
- *
- * - wenn man nicht weiß, was der Fehler ist, kann man dan die Basis Klasse aufrufen (Exception)
- * aber das wird langsamer als wenn ich den Fehler direkt schreibe
- *
- * - unterstützt keine Methoden und Klasse
- * - kann nicht als Parameter innerhalb einer Methode verwendet werden
- * - kann aber innerhalb ale arten von Methoden geschrieben werden
- *
- * was sid die checked und unchecked Exceptions?
- * - checked: Compiler zwingt mich ein try-catch Block zu erstellen und Sie erben von der Klasse Exception, aber nicht von RuntimeException.
- * wie z.b(IOException, SQLException, FileNotFoundException)
- * - unchecked: Compiler zwingt mich nicht try-catch Block zu erstllen und Sie erben nur von RuntimeException.
- * wie z.b (ullPointerException, ArrayIndexOutOfBoundsException, ArithmeticException)
- *
- * welche Arten haben wir?
- * 1. NullPointerException: Zugriff auf null-Referenz.
- * 2. ArrayIndexOutOfBoundsException: Ungültiger Array-Indexzugriff.
- * 3. ClassCastException: Ungültige Typumwandlung
- * 4. ArithmeticException: Fehler in arithmetischer Operation (z.B. Division durch null).
- * 5. NumberFormatException: Fehlerhafte Zahlumwandlung.
- * 6. IOException: Eingabe-/Ausgabefehler.
- * 7. FileNotFoundException: Datei nicht gefunden.
- * 8. SQLException: Fehler in der Datenbankoperation.
- * 9. IllegalArgumentException: Ungültiges Argument übergeben.
- * etc...
- */
-
-
- /*
- * Try-catch block:
- *
- * try{
- * - m try-Block wird der Code geschrieben,
- * der möglicherweise einen Fehler verursachen könnte.
- *
- * }catch(Exception e){
- * - Was passieren soll, wenn ein Fehler auftritt?
- * - Exception:ist die Basisklasse für alle Ausnahmen, die das Programm möglicherweise behandeln sollte.
- * wie z.b(IOException),SQLException,NullPointerException sind unterklasse von Exception
- * - e: ist ist ein belibeger Name eines Objektes
- *
- * - man kann try in ein try erzeugen
- * }
- */
- public static void main(String[] args) {
-
- //Try-catch block beispiel
- try {
- int[] arr = new int[] {1,2,3};
- System.out.println(arr[4]);
- }catch(Exception e) {
- //entweder
- System.out.println("das ist ungültig");
- //oder
- System.out.println(e);
- //oder
- System.out.println(e + "das ist ungültig");
- }
- // trotz des Fehlers läuft das Programm weiter, da ich try catch habe
- System.out.println("1");
-
-
- //Try-catch block mit NullPointerException (ist eine klasse) beispiel
- //also Objekt ist leer!
- try {
- int[] arr = null;
- System.out.println(arr[4]);
- }catch(Exception e) {
-
- System.out.println(e.toString());
- }
- // trotz des Fehlers läuft das Programm weiter, da ich try catch habe
- System.out.println("1");
-
-
- //Try-catch block mit NumberForamtEception (ist eine klasse) beispiel
- try {
- System.out.println("haöö");// die wird ausgegeben
- int val = Integer.parseInt("String23");
- System.out.println(val);
- System.out.println("haöö");// die wird nicht ausgegeben
- }catch(Exception e) {
-
- System.out.println(e.toString());
- }
- // trotz des Fehlers läuft das Programm weiter, da ich try catch habe
- System.out.println("1");
-
-
-
- }
-
-
-}
diff --git a/Programmierung2/src/oop/ExceptionHandling/Finally.java b/Programmierung2/src/oop/ExceptionHandling/Finally.java
deleted file mode 100644
index 9debfef..0000000
--- a/Programmierung2/src/oop/ExceptionHandling/Finally.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package oop.ExceptionHandling;
-
-public class Finally {
-
- public static void main(String[] args) {
- /*
- * Wenn ein Programmfehler auftaucht, springe in catch Block gib den Fehler aus und laufe nicht weiter
- * und am Ende gib finally Block aus!
- */
- try {
- int arr[] = new int[5];
- arr[7] = 5;
-
- }catch(Exception e) {
-
- System.out.println(e);
- return;
-
- }finally {
- System.out.println("finally");
- }
-
-
- /*
- * wegen System.exit in catch wird finally Block nicht ausgegenen
- */
- try {
- int arr[] = new int[5];
- arr[7] = 5;
-
- }catch(Exception e) {
-
- System.out.println(e);
- System.exit(0);
-
- }finally {
- System.out.println("finally");
- }
- //System.out.println(getNumber(3));
-
-
- }
-
- // hier wir die 3 ausgegben, weil finally soll ausgegeben werden
- public static int getNumber(int x) {
-
- try {
- if (x == 3)
- return 1;
-
- }catch (Exception e){
- return 2;
-
- }finally {
- return 3;
- }
- }
-}
diff --git a/Programmierung2/src/oop/ExceptionHandling/MultiCatchBlocks.java b/Programmierung2/src/oop/ExceptionHandling/MultiCatchBlocks.java
deleted file mode 100644
index eb1b79c..0000000
--- a/Programmierung2/src/oop/ExceptionHandling/MultiCatchBlocks.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package oop.ExceptionHandling;
-
-public class MultiCatchBlocks {
-
- public static void main(String[] args) {
- try {
- int arr[] = new int[5];
- arr[10] = 7/0;
- }
- catch(ArrayIndexOutOfBoundsException|java.lang.ArithmeticException ex) {
- System.out.println(ex);
- }
- }
-
-
-}
diff --git a/Programmierung2/src/oop/ExceptionHandling/Throwkeyword.java b/Programmierung2/src/oop/ExceptionHandling/Throwkeyword.java
deleted file mode 100644
index c02670e..0000000
--- a/Programmierung2/src/oop/ExceptionHandling/Throwkeyword.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package oop.ExceptionHandling;
-
-public class Throwkeyword {
-
- public static void main(String[] args) {
- // hier try und catch sind optional
- try {
- number(-1);
- }catch (Exception e){
- System.out.println("die Zahl ist negativ");
- }
-
- /*
- * in diesem try verfachen hier, wird das Block finally
- * erst ausgeführt, before das Block catch mit throw
- */
- try {
- int x = 5/0;
-
- }catch(Exception e) {
- throw new ArithmeticException("neu throw");
-
- }finally{
- System.out.println("finally Block");
- }
-
-
-
- }
-
- //throws Exception ist hier optional
- static void number(int number) throws Exception {
-
- if (number <= 0) {
- //throw new ArithmeticException();Oder
- //throw new ArithmeticException("das geht nicht");oder
- ArithmeticException message = new ArithmeticException("die Zahl geht nicht");
- throw message;
- }
-
- else
- System.out.println("Die Zahl ist richtig");
- }
-}
diff --git a/Programmierung2/src/oop/ExceptionHandling/ThrowsKeyword.java b/Programmierung2/src/oop/ExceptionHandling/ThrowsKeyword.java
deleted file mode 100644
index 9e7c141..0000000
--- a/Programmierung2/src/oop/ExceptionHandling/ThrowsKeyword.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package oop.ExceptionHandling;
-
-import java.io.FileNotFoundException;
-import java.io.FileReader;
-import java.io.IOException;
-
-public class ThrowsKeyword {
- /*
- * - Wenn der Programmiere weiß, wie er mit den Fehlern umgehen kann.
- * - zwingt jeder, der solche Methoden implementiert, throws zu behandeln
- */
- public static void main(String[] args) {
- /*
- * da ich in readFile Methode throws verwendet habe
- * ,soll ich hier z.b try catch erzeugen
- */
- try {
- readFile("D:\\Test.txt");
- } catch (FileNotFoundException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- }
-
- public static void readFile(String File) throws FileNotFoundException, IOException{
- FileReader reader = new FileReader(File);// resource
- System.out.println("File Inhalt: ");
-
- int r = 0;
- while((r = reader.read()) != -1) {
- System.out.print((char) r);
- }
-
- }
-}
diff --git a/Programmierung2/src/oop/ExceptionHandling/UnCheckedException.java b/Programmierung2/src/oop/ExceptionHandling/UnCheckedException.java
deleted file mode 100644
index edbe662..0000000
--- a/Programmierung2/src/oop/ExceptionHandling/UnCheckedException.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package oop.ExceptionHandling;
-
-public class UnCheckedException {
-
- public static void main(String[] args) {
- /*
- * - Solche Errors kann man nicht mit try und Catch behandeln also sie sind keine gute Praxis
- * - try und catch werden den Error nicht lösen
- */
- try {
- f();
- }catch (Error e) {
- System.out.println(e);//java.lang.StackOverflowError
- }
-
- }
-
- // Die Methode ruft sich bis unendlich
- static void f() {
- System.out.println("f()");
- f();
- }
-}
diff --git a/Programmierung2/src/oop/File-Handling.odt b/Programmierung2/src/oop/File-Handling.odt
deleted file mode 100644
index 2bc3d1a..0000000
Binary files a/Programmierung2/src/oop/File-Handling.odt and /dev/null differ
diff --git a/Programmierung2/src/oop/FileHandling/ByteKlassen/Eingefügtes Bild.png b/Programmierung2/src/oop/FileHandling/ByteKlassen/Eingefügtes Bild.png
deleted file mode 100644
index 5096fe1..0000000
Binary files a/Programmierung2/src/oop/FileHandling/ByteKlassen/Eingefügtes Bild.png and /dev/null differ
diff --git a/Programmierung2/src/oop/FileHandling/ByteKlassen/Fileinputstream.java b/Programmierung2/src/oop/FileHandling/ByteKlassen/Fileinputstream.java
deleted file mode 100644
index b72dba1..0000000
--- a/Programmierung2/src/oop/FileHandling/ByteKlassen/Fileinputstream.java
+++ /dev/null
@@ -1,57 +0,0 @@
-package oop.FileHandling.ByteKlassen;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-//also ich habe daten auf meinm File und ich will diese Datein lesen oder importieren
-// man kann heir mit Text bearbeiten aber es ist nicht dafür richtig alternative Möglichkeit (die abstrakte klasse reader und Writer)
-public class Fileinputstream {
-
- /*read() Methode:
- * - fis.read liest aus dem File nur ein Byte aus und gibt ein Integer zurück
- * - z.b a liest als (97) lösung als (char) casting
- * - wenn die Methode keinen Byte lesen kann, gibt -1 zurück
- *
- *read(byte [] b) Method:
- * - die übernimmt array vom type byte
- */
-
- public static void main(String[] args) throws IOException {
- FileInputStream fis = null;
- fis = new FileInputStream("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\Test");
- {
- // das ist falsch, weil ich die Aufruf der Methode ist falsch
- while (fis.read() != -1)
- System.out.print((char)fis.read());
- }
-
-
- //richtig!!
- int data;
- while((data = fis.read()) != -1)// wenn kein mehr chars gibt, ist -1
- System.out.print((char)data);
-
- {
- // read() übernimmt ein byte array
- byte[] b = new byte[3]; // byte array
- fis.read(b);// methode übernimmt byte array
- String s = new String(b);//mit diesem Konstruktor gebe ich alle Inhalt aus ohne Loop
- System.out.println(s);
- }
-
-
-
- {
- // read() übernimmt ein byte array mit dynamischen size für array
- File f = new File("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\Test");
- FileInputStream f2 = new FileInputStream(f);
- byte[] b = new byte[(int) f.length()]; //Methode gibt long zurück size soll aber int sein
- fis.read(b);// methode übernimmt byte array
- String s = new String(b);//mit diesem Konstruktor gebe ich alle Inhalte aus (ohne Loop)
- System.out.println(s);
- }
-
-
-
- }
-}
diff --git a/Programmierung2/src/oop/FileHandling/ByteKlassen/Filoutputstream.java b/Programmierung2/src/oop/FileHandling/ByteKlassen/Filoutputstream.java
deleted file mode 100644
index 8d6575e..0000000
--- a/Programmierung2/src/oop/FileHandling/ByteKlassen/Filoutputstream.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package oop.FileHandling.ByteKlassen;
-
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-
-//also ich habe datein in meine Programm und ich will diese Datein zu meinem File schicken also (schreiben)
-//man kann heir mit Text bearbeiten aber es ist nicht dafür richtig alternative Möglichkeit (die abstrakte klasse reader und Writer)
-
-public class Filoutputstream {
-
- /*write() methode:
- * - die übernimmt nur (integer) zahlen
- * - kann Strings mit Hilfe von byte array aufnehmen
- * z.b fSchreiben.write("ABF".getBytes());
- * - fSchreiben.write("arabische sprache".getBytes()("UTF-8")); um andere Sprachen aufzunehmen
- * - fSchreiben.flush(); stellt sicher, dass die Datein richtig geschrieben werden
- *
- */
- public static void main(String[] args) throws IOException {
- // hier wenn er den File (Test2) nicht findet, erzeugt er File mit dem Name Test2 automatisch
- FileOutputStream fSchreiben = new FileOutputStream("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\Test2");
- //fSchreiben.write(10);
- fSchreiben.write("ä".getBytes());
- fSchreiben.flush();
-
- //lesen der Datei
- FileInputStream fLesen = new FileInputStream("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\Test2");
- System.out.println((char)fLesen.read());
- }
-
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/ByteKlassen/LeseEinBild.java b/Programmierung2/src/oop/FileHandling/ByteKlassen/LeseEinBild.java
deleted file mode 100644
index 5847edb..0000000
--- a/Programmierung2/src/oop/FileHandling/ByteKlassen/LeseEinBild.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package oop.FileHandling.ByteKlassen;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-public class LeseEinBild {
-
- public static void main(String[] args) throws IOException {
- //gibt mit die gesamte size vom byte meine Bildes
- File file = new File("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling");
-
- FileInputStream fin = new FileInputStream(file);
- byte b[] = new byte[(int) file.length()];
- fin.read(b);
-
- //Optional loop
- for (int i = 0; i < b.length; i++)
- System.out.print(b[i]);
-
-
- /*
- * - erstellt mir eine neues Bild mit dem Name (neues Bild)
- * - dieses Verfahren kann mit allen Arten von Byts verwendet werden
- */
- FileOutputStream fos = new FileOutputStream("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\neues Bild.png");
- fos.write(b);
- fos.flush();
- fos.close();
-
-
- }
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/ByteKlassen/Test b/Programmierung2/src/oop/FileHandling/ByteKlassen/Test
deleted file mode 100644
index f2ba8f8..0000000
--- a/Programmierung2/src/oop/FileHandling/ByteKlassen/Test
+++ /dev/null
@@ -1 +0,0 @@
-abc
\ No newline at end of file
diff --git a/Programmierung2/src/oop/FileHandling/ByteKlassen/Test2 b/Programmierung2/src/oop/FileHandling/ByteKlassen/Test2
deleted file mode 100644
index 9d3f046..0000000
--- a/Programmierung2/src/oop/FileHandling/ByteKlassen/Test2
+++ /dev/null
@@ -1 +0,0 @@
-ä
\ No newline at end of file
diff --git a/Programmierung2/src/oop/FileHandling/ByteKlassen/neues Bild.png b/Programmierung2/src/oop/FileHandling/ByteKlassen/neues Bild.png
deleted file mode 100644
index 5096fe1..0000000
Binary files a/Programmierung2/src/oop/FileHandling/ByteKlassen/neues Bild.png and /dev/null differ
diff --git a/Programmierung2/src/oop/FileHandling/FileHandling.java b/Programmierung2/src/oop/FileHandling/FileHandling.java
deleted file mode 100644
index 5d2dea1..0000000
--- a/Programmierung2/src/oop/FileHandling/FileHandling.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package oop.FileHandling;
-
-public class FileHandling {
- /*
- * - bezieht sich auf das Arbeiten mit Dateien und Verzeichnissen, einschließlich Erstellen, Lesen,
- * Schreiben, Bearbeiten und Löschen.
- * - die Kommunikation zwischen File und Programm heißt (stream)
- * - Programm liest (Read) aus dem File (Input stream)
- * - Programm schreibt (Write) oder (speichert) auf dem File (output Stream)
- * - Es gibt ein eingine Stream für Lesen
- * - Es gibt ein eingine Stream für schreiben
- * - man kann das easy in Konstruktor als parameter und methode als parameter machen oder drin
- *
- * - FileInputStream und FileOutPutStream sind für File Texte nicht geeignet,
- * alternativ möglichkeit die abstrakte Klassen Reader und Writer
- * - Hinweis: Die abstrakte Klasse Reader liest Zeichen für Zeichen und ruft die Methode read() jedes Mal auf, wenn ein neues Zeichen gelesen wird.
- * Wenn wir z.B. 10 Zeichen lesen möchten, wird die Methode read() 10 Mal aufgerufen.
- *
- * Alternative Möglichkeit: Die Klasse BufferedReader kann verwendet werden, um ganze Zeilen oder größere Blöcke von Zeichen auf einmal zu lesen,
- * was effizienter sein kann, da sie den Lesevorgang puffert und somit weniger oft auf die zugrunde liegende Datenquelle zugreift.
- * - printWriter ist für alle Datentyps gut geeinigt (kann nur schreiben auf dem File)
- * - Scanner ist für alle Datentyps gut geeinigt (kann nur lesen auf dem File)
- * - flush() soll aufgerufen werden
- * - BufferReader ist besser als Scanner
- *
- * Objekte einer Klasse können auch auf dem File gelesen und geschriben werden:
- *
- * - Serialization: ist eine (marker) lerre interface Klasse, die implemntiert werden soll
- * , wenn wir das Objekt auf einem File schreiben möchten
- *
- * 1. Serialization (Objekt schreiben): Ist ein Mechanismus zur Umwandlung eines Objekts in einen Byte-Stream,
- * der dann in einer Datei gespeichert werden kann. Dies wird durch die Klasse ObjectOutputStream ermöglicht.
- *
- * 2. Deserialization (Objekt lesen): Ist ein Mechanismus zur Umwandlung eines Byte-Streams zurück in ein Objekt.
- * Dies wird durch die Klasse ObjectInputStream ermöglicht.
- */
-
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/FileKlasse.java b/Programmierung2/src/oop/FileHandling/FileKlasse.java
deleted file mode 100644
index 8a9b86f..0000000
--- a/Programmierung2/src/oop/FileHandling/FileKlasse.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package oop.FileHandling;
-import java.io.File;
-import java.io.IOException;
-// Hauptfunktion verwaltet Files
-public class FileKlasse {
-
- /*Was macht diese Kalsse?
- * - abstrakte Darstellungen von Dateipfaden und Verzeichnissen zu bieten und verschiedene Operationen darauf zu ermöglichen
- * - sie befindet sich im Paket java.io
- * - stellt keine Methode zum direkten Lesen oder Schreiben von Daten bereit.
- * - Stattdessen bietet sie Funktionen zur Dateiverwaltung.
- */
- public static void main(String[] args) {
- File file = new File("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\Test");
-
- if (file.exists()) {
- System.out.println("Datei existiert: " + file.getName());
- System.out.println("Pfad: " + file.getPath());
- System.out.println("Absoluter Pfad: " + file.getAbsolutePath());
- System.out.println("Schreibbar: " + file.canWrite());//ob der ich in der File schreiben kann
- System.out.println("Lesbar: " + file.canRead()); //ob der ich in File lesen kann
- System.out.println("Größe: " + file.length() + " Bytes");
- System.out.println("kann ausführen = " + file.canExecute()); //kann ich diesen Fiel bearbeiten (ja/nein)
-
- }
- // test3 File existiert nicht im Pfad also wird einen neuen Pfeil erstellt
- File file2 = new File("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\Test3");
- // try catch sollen erzuegt werden
- try {
- if (file.createNewFile()) // createNewFile() gibt boolean zurück,ob der File ergolgreich erstellt wurde oder nicht
- System.out.println("Datei erstellt: " + file.getName()); // der File muss im Pfad nicht existieren, damit es erstellt wurde
- else
- System.out.println("Fehler beim Erstellen der Datei.");
-
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- // erstelle ein Verzeichnes
- File folder = new File("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\TestFolder");
- if (!folder.exists()) {
- if (folder.mkdir())
- System.out.println("Verzeichnis erstellt: " + folder.getName());
- else
- System.out.println("Fehler beim Erstellen des Verzeichnisses.");
- }
-
-
- // gibt die Inhalt eines Folders zurück
- File dir2 = new File("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\TestFolder");
-
- // Auflisten der Inhalte des Verzeichnisses mit Hilfe eines String arrays
- String[] fileList = dir2.list();
- if (fileList != null) {
- System.out.println("Inhalte des Verzeichnisses:");
- for (String fileName : fileList)
- System.out.println(fileName);
-
- } else
- System.out.println("Das Verzeichnis ist leer oder konnte nicht aufgelistet werden.");
-
- }
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/SerializationAndDeserialization/FileTest.txt b/Programmierung2/src/oop/FileHandling/SerializationAndDeserialization/FileTest.txt
deleted file mode 100644
index c9d61dc..0000000
Binary files a/Programmierung2/src/oop/FileHandling/SerializationAndDeserialization/FileTest.txt and /dev/null differ
diff --git a/Programmierung2/src/oop/FileHandling/SerializationAndDeserialization/Test.java b/Programmierung2/src/oop/FileHandling/SerializationAndDeserialization/Test.java
deleted file mode 100644
index 18b7212..0000000
--- a/Programmierung2/src/oop/FileHandling/SerializationAndDeserialization/Test.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package oop.FileHandling.SerializationAndDeserialization;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.ObjectInputStream;
-import java.io.ObjectOutputStream;
-import java.util.ArrayList;
-
-public class Test {
-
- public static void main(String[] args) throws FileNotFoundException, IOException, ClassNotFoundException {
-
- File file = new File("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\SerializationAndDeserialization\\FileTest.txt");
-
- //(Serialization): schreibe das Objekt auf dem File als byte stream
- ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(file));
- writeObjekt write = new writeObjekt(111,"obai",3.4);
- oos.writeObject(write);
-
- //(Deserialization): Lese das Objekt auf dem File als byte stream
- ObjectInputStream ois = new ObjectInputStream(new FileInputStream(file));
-
- // Das zurückgegebene Objekt muss in den spezifischen Typ gecastet werden
- writeObjekt f1 = (writeObjekt) ois.readObject();
- System.out.println(f1);
-
-
-
- // multiple objects (lesen & schreiben)
-
- //schreiben:
- writeObjekt s1 = new writeObjekt(111,"Obai",2.2);
- writeObjekt s2 = new writeObjekt(111,"Omar",2.2);
- ArrayList list = new ArrayList<>();
- list.add(s1);
- list.add(s2);
-
- ObjectOutputStream writeList = new ObjectOutputStream(new FileOutputStream(file));
- writeList.writeObject(list);
-
- //Lesen:
- ObjectInputStream readList = new ObjectInputStream(new FileInputStream(file));
- ArrayList multiobjekt = (ArrayList)readList.readObject();
- System.out.println(multiobjekt);
-
-
-
- }
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/SerializationAndDeserialization/writeObjekt.java b/Programmierung2/src/oop/FileHandling/SerializationAndDeserialization/writeObjekt.java
deleted file mode 100644
index d5cbf51..0000000
--- a/Programmierung2/src/oop/FileHandling/SerializationAndDeserialization/writeObjekt.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package oop.FileHandling.SerializationAndDeserialization;
-
-import java.io.Serializable;
-/*
- * Serializable ist ein marker (leere) Interface kalsse, soll implementiert werden
- */
-
-public class writeObjekt implements Serializable {
-
- int id;
- String name;
- double Note;
-
- public writeObjekt(int id, String name, double note) {
- this.id = id;
- this.name = name;
- Note = note;
- }
-
- public int getId() {
- return id;
- }
-
- public void setId(int id) {
- this.id = id;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public double getNote() {
- return Note;
- }
-
- public void setNote(double note) {
- Note = note;
- }
-
- @Override
- public String toString() {
- return "Student [id=" + id + ", name=" + name + ", Note=" + Note + "]";
- }
-}
diff --git a/Programmierung2/src/oop/FileHandling/TestFolder/1.txt b/Programmierung2/src/oop/FileHandling/TestFolder/1.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/Programmierung2/src/oop/FileHandling/TestFolder/2.txt b/Programmierung2/src/oop/FileHandling/TestFolder/2.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/Programmierung2/src/oop/FileHandling/character/Bufferedreader.java b/Programmierung2/src/oop/FileHandling/character/Bufferedreader.java
deleted file mode 100644
index 334ab95..0000000
--- a/Programmierung2/src/oop/FileHandling/character/Bufferedreader.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package oop.FileHandling.character;
-import java.io.FileReader;
-import java.io.File;
-import java.io.IOException;
-import java.io.BufferedReader;
-
-/*
- * - hauptfubktion: Liest ganze Zeilen (line by line) auf einmal und ruft die Methode readLine() aus
- *
- */
-public class Bufferedreader {
-
- public static void main(String[] args) throws IOException {
- BufferedReader br = new BufferedReader(new FileReader("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\character\\Test1"));
- String line = br.readLine();
- /*
- * - Liest nur eine einzige Line auf dem File
- * Lösungsmöglichkeit => Loop erzeugen
- */
- while(line != null) {
- System.out.println(line); // print die erste Line
- line = br.readLine(); // spring auf die nächste Linie
- }
-
-
- }
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/character/Bufferedwriter.java b/Programmierung2/src/oop/FileHandling/character/Bufferedwriter.java
deleted file mode 100644
index bcfed73..0000000
--- a/Programmierung2/src/oop/FileHandling/character/Bufferedwriter.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package oop.FileHandling.character;
-import java.io.FileWriter;
-import java.io.File;
-import java.io.IOException;
-
-import java.io.BufferedWriter;
-/*
- * - hauptfubktion: Liest ganze Zeilen auf einmal und ruft die Methode readLine() aus
- * - br.write(97); => 'a' sie liest keine Integer zahlen
- * - br.write(10.5) => error geht nicht
- * - br.write(boolean) => error geht nicht
- * Alternative Möglichkeit (PrintWriter ) kann alle Daten Typs auf dem File schreiben
- */
-public class Bufferedwriter {
-
- public static void main(String[] args) throws IOException {
- /*
- * - BufferedWriter übernimmt keine Pfad für einen File,
- * sondern übernimmt sie ein Objekt aus der Klasse (FileWriter) die extends die Abstrakte Klasse Writer
- * - FileWriter Klass hilft mir BufferedWriter zu verwenden
- */
-
- /*
- * true, damit Wenn {@code true}, werden die Daten (fix geschpeichert)
- * anstatt an den Anfang. also die Datein werden nicht überschrieben werden
- */
- BufferedWriter b1 = new BufferedWriter(new FileWriter("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\character\\Test1",true));
- b1.write("Hallo Welt");
- b1.newLine(); // neue Linie
- b1.write("Hallo Welt2");
- b1.flush();
- b1.close();
-
- }
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/character/Filereader.java b/Programmierung2/src/oop/FileHandling/character/Filereader.java
deleted file mode 100644
index c6aa85f..0000000
--- a/Programmierung2/src/oop/FileHandling/character/Filereader.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package oop.FileHandling.character;
-
-import java.io.File;
-import java.io.FileReader;
-import java.io.IOException;
-
-public class Filereader {
- /*
- * - Das Verfahren läuft ganz geanu wie beim FileInputStream
- * - Kritik: FileReader liest jedes Char ich habe 10 Zeichen
- * die Methode read() wird in dem Fall sich selbst 10 mal aufrufen
- * Alternativ möglichkeit (BufferedReader)
- */
- public static void main(String[] args) throws IOException {
-
- File file = new File("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\character\\Test1");
- FileReader fr = new FileReader(file);
-
- // lese Dateien
- // Variante 1:
- int i;
- while((i = fr.read()) != -1)
- System.out.print((char)i);
-
- // Variante 2: Mit Hilfe von File Klasse
- char[] speicher = new char[(int) file.length()];
- fr.read(speicher);
- for (char c : speicher)
- System.out.print(c);
-
-
-
- }
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/character/Filewriter.java b/Programmierung2/src/oop/FileHandling/character/Filewriter.java
deleted file mode 100644
index 47471aa..0000000
--- a/Programmierung2/src/oop/FileHandling/character/Filewriter.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package oop.FileHandling.character;
-
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-
-public class Filewriter {
- // für Schreiben auf einem beliebig File
- public static void main(String[] args) throws IOException {
- //erstelle einen File
- File newFile = new File("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\character\\Test1");
- if (newFile.createNewFile()) // createNewFile() gibt boolean zurück,ob der File ergolgreich erstellt wurde oder nicht
- System.out.println("Datei erstellt: " + newFile.getName()); // der File muss im Pfad nicht existieren, damit es erstellt wurde
-
- String str = "Hallo Welt";
- FileWriter fr = new FileWriter("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\character\\Test1");
- fr.write(str); //wird Hallo Welt auf dem File geschrieben!
- fr.write("\n"); // breakline im File
- fr.write(str, 0, str.length()); //schreibt string von int x inkl bis int y exklus
- fr.write("\n");
- fr.write('2');
-
- fr.close();
-
-
- }
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/character/OutPutStreamWriter.java b/Programmierung2/src/oop/FileHandling/character/OutPutStreamWriter.java
deleted file mode 100644
index 2a868c6..0000000
--- a/Programmierung2/src/oop/FileHandling/character/OutPutStreamWriter.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package oop.FileHandling.character;
-import java.io.Writer;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStreamWriter;
-
-public class OutPutStreamWriter {
-
- public static void main(String[] args) throws IOException {
- // die Klasse (OutputStreamWriter) extends (Writer)
-
- Writer writer = new OutputStreamWriter(new FileOutputStream("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\character\\Test1"));
- String str = "hi Welt";
- writer.write(str);
- writer.flush();// da ich diese Methode aufgerufen habe, wurden die Datein zugeschieckt!
- }
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/character/Printwriter.java b/Programmierung2/src/oop/FileHandling/character/Printwriter.java
deleted file mode 100644
index 74b1b68..0000000
--- a/Programmierung2/src/oop/FileHandling/character/Printwriter.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package oop.FileHandling.character;
-
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.PrintWriter;
-
-public class Printwriter {
- /*
- * - schreibt alle Daten Typs auf dem File
- * - flush() soll aufgerufen werden
- */
- public static void main(String[] args) throws IOException {
- // - flush() soll aufgerufen werden
- PrintWriter pr = new PrintWriter("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\character\\Test1");
-// pr.println(97);
-// pr.println("AAA");
-// pr.println('B');
-// pr.println(true);
-// pr.flush();
-
- // oder
- FileWriter fr = new FileWriter("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\character\\Test1");
- PrintWriter pr2 = new PrintWriter(fr, true); //true steht für flush() Aufruf
- pr2.write(97); // wenn wir write verwenden, sollen wir flush() aufrufen
- pr2.println("AAA");
- pr2.println('B');
- pr2.println(true);
-
-
- }
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/character/Scannerklass.java b/Programmierung2/src/oop/FileHandling/character/Scannerklass.java
deleted file mode 100644
index be4ff4a..0000000
--- a/Programmierung2/src/oop/FileHandling/character/Scannerklass.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package oop.FileHandling.character;
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.util.Scanner;
-
-public class Scannerklass {
-
- public static void main(String[] args) throws IOException {
- File fr = new File("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\oop\\FileHandling\\character\\Test1");
- Scanner scan = new Scanner(fr);
-
- //System.out.println(scan.next()); liest nur ein wort und hört dann auf
- //System.out.println(scan.nextLine()); // Liest nur eine Line und hört dann auf
-//
-// while(scan.hasNextLine())// hilfe mir alle Zeilen zu lesen
-// System.out.println(scan.nextLine());
-
- scan.useDelimiter("w"); // gibt Foramt für den Text aus dem File
- while(scan.hasNext())// hilfe mir alle Wörter zu lesen
- System.out.println(scan.next());
- }
-
-}
diff --git a/Programmierung2/src/oop/FileHandling/character/Test1 b/Programmierung2/src/oop/FileHandling/character/Test1
deleted file mode 100644
index e69de29..0000000
diff --git a/Programmierung2/src/oop/FinalKeyword/FinalKeywords.java b/Programmierung2/src/oop/FinalKeyword/FinalKeywords.java
deleted file mode 100644
index 1795610..0000000
--- a/Programmierung2/src/oop/FinalKeyword/FinalKeywords.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package oop.FinalKeyword;
-
-public class FinalKeywords {
-
- /*
- * Final is a non-access modifier applicable only to:
- * Final variables oder (Constant Variables) oder (const Variables)
- * Final parameters
- * Final methods
- * Final classes
- * Final References
- *
- *
- * Final variables oder:
- * final variable soll immer groß geschrieben werden.
- * für final variable kann nicht setter und getter erstellt werden
- * final static variable können in Constructor keinen Wert zuweisen werden
- * final variable sind mit Scanner gültig
- *
- *
- *
- * Final methods:
- * final methods können nicht überschrieben werden. complier error
- * final-Methoden können in überladen werden.
- *
- *
- * Final Classes:
- * final classes können nicht geerbt werden.
- * classes die Private Konstruktoren hat, kann auch nicht geerbt werden
- *
- *
- *
- *Final References:
- *final References können nur einmal Werte zugewiesen Werden.
- *
- */
-
-}
diff --git a/Programmierung2/src/oop/FinalKeyword/Student.java b/Programmierung2/src/oop/FinalKeyword/Student.java
deleted file mode 100644
index 1974ded..0000000
--- a/Programmierung2/src/oop/FinalKeyword/Student.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package oop.FinalKeyword;
-
-public class Student {
- final int STUDENT_ID ;
- final static int degree;
- String name;
- int geburtstag;
-
- /* so geht
- * {STUDENT_ID = 200;}
- */
-
-
- //oder so;
- Student(){
- STUDENT_ID = 20;
- //degree = 2; Das ist verboten
- }
- // nur in static block
- static {
- degree = 20;
- }
-
-
- public Student(final int STUDENT_ID, String name, int geburtstag) {
- //STUDENT_ID = 0; verboten, das STUDENT_ID final ist
- this.STUDENT_ID = STUDENT_ID;
- this.name = name;
- this.geburtstag = geburtstag;
- }
-
- // getmethod ist gültig
- public int getSTUDENT_ID() {
- return STUDENT_ID;
- }
-
-
- /*das ist verboten, weil wir STUDENT_ID nicht ersetzen dürfen
-
- * public int setSTUDENT_ID(int STUDENT_ID) {
- this.STUDENT_ID = STUDENT_ID;
- }
- */
-
-
- @Override
- final public String toString() {
- return "Student [STUDENT_ID=" + STUDENT_ID + ", name=" + name + ", geburtstag=" + geburtstag + "]";
- }
-}
-
-
-
-class GraduatedStudent extends Student{
-
- /*Verboten
- * @Override
- * public String toString() {
- return "Student [STUDENT_ID=" + STUDENT_ID + ", name=" + name + ", geburtstag=" + geburtstag + "]";
- }
- */
-
-
-}
diff --git a/Programmierung2/src/oop/FinalKeyword/Test.java b/Programmierung2/src/oop/FinalKeyword/Test.java
deleted file mode 100644
index c549d9d..0000000
--- a/Programmierung2/src/oop/FinalKeyword/Test.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package oop.FinalKeyword;
-
-
-public class Test {
-
- public static void main(String[] args) {
- final Student st1 = new Student(123,"obai",2001);
-
- // st1 = new Student (123,"obai",2001); Verboten
-
- System.out.print(st1.toString());
- }
-
-}
diff --git a/Programmierung2/src/oop/Generics/AddMitarbeiter.java b/Programmierung2/src/oop/Generics/AddMitarbeiter.java
deleted file mode 100644
index 3d24886..0000000
--- a/Programmierung2/src/oop/Generics/AddMitarbeiter.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package oop.Generics;
-import java.util.ArrayList;
-
-
-public class AddMitarbeiter {
-
- ArrayList m1 = new ArrayList<>();
-
- public ArrayList getM1() {
- return m1;
- }
-
- public void setM1(ArrayList m1) {
- this.m1 = m1;
- }
-
- @Override
- public String toString() {
- return "AddMitarbeiter [m1=" + m1 + "]";
- }
-}
diff --git a/Programmierung2/src/oop/Generics/DateTyps.java b/Programmierung2/src/oop/Generics/DateTyps.java
deleted file mode 100644
index 7dde328..0000000
--- a/Programmierung2/src/oop/Generics/DateTyps.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package oop.Generics;
-
-public class DateTyps {
-
- private T inhalt;
- private F inhalt2;
-
- public void setInhalt(T inhalt, F inhalt2 ) {
- this.inhalt = inhalt;
- this.inhalt2 = inhalt2;
- }
-
- public T getInhalt() {
-
- return inhalt;
-
- }
-
- public F getInhalt2() {
- return inhalt2;
- }
-
-}
diff --git a/Programmierung2/src/oop/Generics/EinfachesBeispiel.java b/Programmierung2/src/oop/Generics/EinfachesBeispiel.java
deleted file mode 100644
index 106440a..0000000
--- a/Programmierung2/src/oop/Generics/EinfachesBeispiel.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package oop.Generics;
-
-import java.util.ArrayList;
-
-public class EinfachesBeispiel {
-
-
-
- public static void main(String[] args) {
-
-
-
-
- int[] intArray = {1,2,3,4,5};
- double[] doubleArray = {1.1,2.2,3.3,4.12,4.4};
- float[] floatArray = {1.1f,2.2f,3.3f,4.12f,4.4f};
-
- //auslesen(floatArray);
-
- // für Generic
- Integer[] IntegerArray = {1,2,3,4,5};
- Double[] DoubleArray = {1.1,2.2,3.3,4.12,4.4};
- Float[] FloatArray = {1.1f,2.2f,3.3f,4.12f,4.4f};
- Character[] characterArray = {'a','b','c'};
- String[] stringArray = {"hallo","Welt"};
-
- //auslesenGenerics(stringArray);
-
-
- var variable = 1.1;
- System.out.print(variable);
-
- }
- public static void auslesen(int[] array) {
-
- for (int i : array)
- System.out.print(i + " ");
- }
-
- public static void auslesen(double[] array) {
-
- for (double i : array)
- System.out.print(i + " ");
- }
-
-
- public static void auslesen(float[] array) {
-
- for (float i : array)
- System.out.print(i + " ");
- }
-
- // ich muss nicht immer die Mthode überladen wie oben die Methoden
- // ich schicke also eine Objekt an diese Methode
- public static void auslesenGenerics(obj[] array) {
-
- for (obj i : array)
- System.out.print(i + " ");
- }
-
-}
diff --git a/Programmierung2/src/oop/Generics/Generics.java b/Programmierung2/src/oop/Generics/Generics.java
deleted file mode 100644
index 30a4931..0000000
--- a/Programmierung2/src/oop/Generics/Generics.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package oop.Generics;
-
-public class Generics {
-
- /*
- * Generics ist ein Konzept in der Programmierung, das es ermöglicht, Klassen, Methoden und Schnittstellen so zu schreiben
- * ,dass sie mit beliebigen Datentypen arbeiten können.
- * Anstatt festzulegen, dass eine Klasse oder Methode nur mit einem bestimmten Datentyp (z.B. int, String) arbeiten kann
- * , können Generics verwendet werden, um den Datentyp flexibel zu gestalten.
- *
- * Generic wird durch: Namen ein Typparameter in spitzen Klammern (<>) angegeben wird
- *
- * Generic funktionert mit:
- * 1. Klassen: (public class Box)
- * 2. Methoden: (public static void printArray(T[] array))
- * 3. Interfaces: (public interface Container)
- */
-
-}
diff --git a/Programmierung2/src/oop/Generics/Mietarbeiter.java b/Programmierung2/src/oop/Generics/Mietarbeiter.java
deleted file mode 100644
index db912ce..0000000
--- a/Programmierung2/src/oop/Generics/Mietarbeiter.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package oop.Generics;
-
-public class Mietarbeiter {
-
- String name;
- int alter;
-
- public Mietarbeiter(String name, int alter) {
- super();
- this.name = name;
- this.alter = alter;
- }
-
-
-
- @Override
- public String toString() {
- return "Mietarbeiter [name=" + name + ", alter=" + alter + "]";
- }
-
-
-
-}
diff --git a/Programmierung2/src/oop/Generics/Test.java b/Programmierung2/src/oop/Generics/Test.java
deleted file mode 100644
index d7f8322..0000000
--- a/Programmierung2/src/oop/Generics/Test.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package oop.Generics;
-
-import java.util.ArrayList;
-
-public class Test {
-
- public static void main(String[] args) {
-
- Mietarbeiter m = new Mietarbeiter("obai", 24);
- AddMitarbeiter addMitarbeiter = new AddMitarbeiter();
-
- addMitarbeiter.getM1().add(m);
-
- System.out.println(addMitarbeiter);
-
-
-
- //DateTyps d1 = new DateTyps<>();
-
- }
-
-}
diff --git a/Programmierung2/src/oop/InnereKlassen/Allgemein.java b/Programmierung2/src/oop/InnereKlassen/Allgemein.java
deleted file mode 100644
index dabae45..0000000
--- a/Programmierung2/src/oop/InnereKlassen/Allgemein.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package oop.InnereKlassen;
-
-public class Allgemein {
-
- /*Was ist das?
- * - In Java gibt es vier Haupttypen von inneren Klassen (auch bekannt als Nested Classes)
- * - Diese Klassen werden innerhalb einer anderen Klasse definiert und haben unterschiedliche Eigenschaften und Anwendungsfälle
- * - es ist die Möglichkeit eine Klasse in eine andere Klasse zu binden
- * - diese Klasse heißt "innere Klasse"
- * - Java definiert vier Typen von inneren Klassen
- *
- *
- * . Zusammenfassung:
- * - Statische Innere Klassen: sind unabhängig von der äußeren Klasseninstanz und haben Zugriff nur auf die statischen Mitglieder der äußeren Klasse.
- * - Nicht-statische Innere Klassen: benötigen eine Instanz der äußeren Klasse und haben Zugriff auf alle Mitglieder dieser Instanz.
- * - Lokale Innere Klassen: sind methoden-spezifisch und können nur innerhalb der Methode verwendet werden, in der sie definiert sind.
- * - Anonyme Innere Klassen: sind namenlose Klassen, die sofort erstellt werden und in der Regel verwendet werden, um eine Schnittstelle oder abstrakte Klasse schnell zu implementieren.
- */
- class Außen{
- class Innen{
-
- }
- }
-
-}
diff --git a/Programmierung2/src/oop/InnereKlassen/AnonymeInnereKlassen.java b/Programmierung2/src/oop/InnereKlassen/AnonymeInnereKlassen.java
deleted file mode 100644
index 6d03050..0000000
--- a/Programmierung2/src/oop/InnereKlassen/AnonymeInnereKlassen.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package oop.InnereKlassen;
-
-public class AnonymeInnereKlassen {
- /*
- * - hat keinen eigenen Name
- * - Sie wird sofort in einer Ausdrücke definiert und instanziiert, oft als Implementierung einer Schnittstelle oder als Erweiterung einer Klasse, wenn nur eine einzige Instanz benötigt wird.
- * - Sie wird sofort in einer Ausdrücke definiert und instanziiert, oft als Implementierung einer Schnittstelle oder als Erweiterung einer Klasse, wenn nur eine einzige Instanz benötigt wird.
- * - sind ideal für einmalige Verwendungen
- * - die verwendung von extends und imolements ist nicht erlaubt
- */
-
- interface MyInterface {
- void display();
- }
-
- public static void main(String[] args) {
- MyInterface obj = new MyInterface() {
- @Override
- public void display() {
- System.out.println("Hello from Anonymous Inner Class");
- }
- };
- obj.display();
- }
-
-}
diff --git a/Programmierung2/src/oop/InnereKlassen/LokaleInnereKlasse.java b/Programmierung2/src/oop/InnereKlassen/LokaleInnereKlasse.java
deleted file mode 100644
index d25fb48..0000000
--- a/Programmierung2/src/oop/InnereKlassen/LokaleInnereKlasse.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package oop.InnereKlassen;
-/*
- * - wird nur innerhalb einer Methode, eines Konstruktors oder eines Blocks definiert
- * - Sie ist nur innerhalb des Umfangs sichtbar, in dem sie definiert ist.
- * - Wird typischerweise verwendet, um eine Klasse zu definieren, die nur in einer bestimmten Methode benötigt wird.
- * - lokale Schnittstellen (interfaces) sind nicht erlaubt
- *
- */
-public class LokaleInnereKlasse {
-
- final int x = 2;
- private final String nichtLokal = "ich bin nicht Lokal";
-
- public static void main(String[] args) {
- // diese Klasse ist nur innerhalb der Main methode sichtbar
- class LokaleKlasse{
- public String toString(){
- return "ich bin Lokal22";
- }
-
- }
-
- LokaleKlasse lokal = new LokaleKlasse();
- System.out.println(lokal.toString());
-
- LokaleInnereKlasse test = new LokaleInnereKlasse();
- test.zweiteLokaleKlasse();
-
- }
-
- public void zweiteLokaleKlasse() {
-
- final String ausgabe = "Ich bin lokal in einer methode";
-
- class LokaleKlass2{
- private final String lokal = "Ich bin Lokal";
-
- public void print() {
- System.out.println(nichtLokal + " " + ausgabe + " "+ " " + lokal );
- }
-
- }
-
- LokaleKlass2 lokale2 = new LokaleKlass2();
- lokale2.print();
-
- }
-}
diff --git a/Programmierung2/src/oop/InnereKlassen/NichtStatischeInnereKlasse.java b/Programmierung2/src/oop/InnereKlassen/NichtStatischeInnereKlasse.java
deleted file mode 100644
index 1fc956d..0000000
--- a/Programmierung2/src/oop/InnereKlassen/NichtStatischeInnereKlasse.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package oop.InnereKlassen;
-/*
- * - heißt auch (member class)
- * - zählt auch als Attribut
- * - kann auf alle Elemente der äußere Klasse zugreifen,die auch (private sind)
- * - um ein Objekt der Hauptspeicher zu erzeugen, soll Objekt Computer erst erzeugt werden
- * - unterschied zu statischen, da statischen ohne Objekt der äußere klassen sein können
- * - nicht-statische-innere klassen dürfen keine statische Elemente definieren
- * - sind wichtig für kompositionen
- */
-
-public class NichtStatischeInnereKlasse {
-
- public class Computer{
- // String static user = "obai"; verboten
- String hersteller = "HP";
- Hauptspeicher speicher = new Hauptspeicher();
- // ist verboten
- public static void print() {
- System.out.println("hallo");
- }
-
- class Hauptspeicher{
- int groesse = 1024;
-
- public String gethersteller() {
- //Zugriff auf das Attribut 'hersteller' der äußeren Klasse 'Computer'
- return hersteller;
- }
-
-
- }
-
- }
-
- public static void main(String[] args) {
- NichtStatischeInnereKlasse n1 = new NichtStatischeInnereKlasse();
-
- NichtStatischeInnereKlasse.Computer c1 = n1.new Computer();
- Computer.Hauptspeicher h1= c1.new Hauptspeicher();
- System.out.println(h1.gethersteller() + " " + h1.groesse);
- c1.print();
- }
-
-}
diff --git a/Programmierung2/src/oop/InnereKlassen/StatischeInnereKlasse.java b/Programmierung2/src/oop/InnereKlassen/StatischeInnereKlasse.java
deleted file mode 100644
index 08fc1a7..0000000
--- a/Programmierung2/src/oop/InnereKlassen/StatischeInnereKlasse.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package oop.InnereKlassen;
-/*
- * - diese ist die einfachste Variante einer innere Klasse
- * - wege der Schachtelung wird dieser Typ im Englischen "nested top-Level class" genannt
- * - diese Klasse kann das Gleiche wie "normale" Klassen oder Schnittstellen
- * - statische innere Klasse benötigen keine Instanzen (Exemplare) der äußeren Klasse
- * - statische innere Klasse werden nur sehr selten verwendet
- * - Statische innere Klassen in Java können auf die statischen Elemente der äußeren Klasse zugreifen,
- * (sobald) diese Elemente in der statischen inneren Klasse aufgerufen werden
- * - der Zugriff von der äußeren Klasse auf die innere Klasse ist nur möglich, wenn die äußere Klasse eine Instanz der inneren Klasse erstellt,
- es sei denn, die innere Klasse ist statisch
-
- - der statische Klasse soll anderen Name als der äußere Klasse haben
-
- * Wichtig: es gibt aber einen Weg, um auf die nicht-statische Elemente zuzugreifen (mit ein Objekt)
- */
-
-public class StatischeInnereKlasse {
- public static int x = 2;
- private int y = 1;
-
- // äußere Klasse
- public static String außen() {
- return "ich bin außen";
- }
-
- // Zugriff auf die innere Klasse von äußen
- public int getf() {
- Innereklasse k1 = new Innereklasse();
- return k1.f;
- }
-
- //Innere klasse
- public static class Innereklasse{
- public static int d = x;
- public static int f = 20;
-
- public String toString() {
- return "ich bin innen";
- }
- //Aufruf der statische Attribute der x der äußern klasse
- public int getx() {
- return x;
- }
-
- // Aufruf der nicht statische Elemente der äußere Klasse
- public void printy(StatischeInnereKlasse ob) {
- System.out.println(ob.y);
- }
-
- //Aufruf der Konstruktor der äußere Klasse
- void accessOuterConstructor() {
- // Erstellen einer neuen Instanz der äußeren Klasse und Zugriff auf ihre Elemente
- StatischeInnereKlasse newOuterInstance = new StatischeInnereKlasse();
- System.out.println("New Instance Variable: " + newOuterInstance.y);
- }
-
- }
-
-
-
-
- //zugreife auf innen und außen
- public static void main(String[] args) {
-
- //zugriff nur auf das äußere Klasse
- StatischeInnereKlasse außereKlasse = new StatischeInnereKlasse();
- System.out.println(außereKlasse.toString());
- //zugriff auf die elemente der innere Klasse von äußen
- System.out.println(außereKlasse.getf());
- //System.out.println(außereKlasse.f); Fehler geht nicht
-
- //Zugriff auf die innere Klasse
- StatischeInnereKlasse.Innereklasse innere = new StatischeInnereKlasse.Innereklasse();
- System.out.println(innere.getx());//2
- //System.out.println(innere.d);
- innere.printy(außereKlasse);
- }
-
-}
diff --git a/Programmierung2/src/oop/Interface/Auto.java b/Programmierung2/src/oop/Interface/Auto.java
deleted file mode 100644
index 3e55fce..0000000
--- a/Programmierung2/src/oop/Interface/Auto.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package oop.Interface;
-
-public final class Auto implements Movable,SelfDrivable {
-
- int x,y;
- int numberOffahrer;
-
-
- public Auto() {
-
- }
-
- public Auto(int x, int y) {
- this.x = x;
- this.y = y;
- }
-
- @Override
- public void destination(String d) {
- System.out.println("Destination = " + d);
- }
-
- @Override
- public void drive() {
- System.out.println("drive");
-
- }
-
- @Override
- public void moveUp() {
- y--;
- }
-
- @Override
- public void moveDown() {
- y++;
- }
-
- @Override
- public void moveLeft() {
- x--;
- }
-
- @Override
- public void moveRight() {
- x++;
- }
-
- public void newMethod() {
-
- System.out.print("SelfDrivable");
- }
-
-
-
-
-
-}
diff --git a/Programmierung2/src/oop/Interface/Interface.java b/Programmierung2/src/oop/Interface/Interface.java
deleted file mode 100644
index 1fe9531..0000000
--- a/Programmierung2/src/oop/Interface/Interface.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package oop.Interface;
-
-public class Interface {
-
- /*Was ist das?
- * Eigentlich ist das fast wie die Abstrakte klassen außer:
- *
- * Implementierung Mehrfachvererbung
- * abstrakte Klasse
- *
- * public interface klasseName
- * alle Attribute werden automatisch (public static final)
- * fast alle methoden werden automatisch (public abstract)
- * ,außer die default methoden, die sollen aber in unterkalsse mit dem Wort public (soll geschrieben werden) implementiert werden und die können überschrieben werden
- * Interface kann auch statiche methoden haben, die implementiert werden sollen
- * default methoden sind nur in Interface erlaubt!
- * final methoden sind nicht erlaubt, da sie abstrake sind und sollen überschreiben werden!
- * private methoden sind erlaubt aber nur in der selben Klasse!
- * Interface kann keinen Konstruktor haben!
- * die untereklasse soll alle methode der Interface klasse implementieren
- *
- *
- * NestedInterface:
- * public interface NestedInterface {
- void test();
-
- interface InnerInterface {
- default void test2() {
- System.out.print("Innerinterface");
- }
- }
-
- implements wid durch NestedInterface.InnerInterface
-
- *Functional Interface:
- * @FunctionalInterface
- public interface Test2{
- int berechne(int a, int b);
-
- }
- * @FunctionalInterface dieses Interfaceklasse kann nur
- * (eine abstratke) methode haben aber unendlich viele
- * default,static und private methoden haben
- *
- * Marker or Tagging Interface:
- * ist ein Interface in Java, das keine Methoden oder Konstanten deklarier
- *
- *
- *
- * wichtig:
- * . eine unterekalsse extends eine Obereklasse
- * . eine normale oder final Klasse kann implements eine interface klasse
- * . eine interface klasse extends eine interface klasse
- *
- * welche java types kann interface implementieren?
- * 1. klassen
- * 2. abstrakte klassen
- * 3. nested Klassen (Verschateten klassen)
- * 4. Enum
- * 5. dynamic proxy
- */
-
-}
diff --git a/Programmierung2/src/oop/Interface/Movable.java b/Programmierung2/src/oop/Interface/Movable.java
deleted file mode 100644
index 6638ecf..0000000
--- a/Programmierung2/src/oop/Interface/Movable.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package oop.Interface;
-
-public interface Movable {
-
- void moveUp();
- void moveDown();
- void moveLeft();
- void moveRight();
-
- default void newMethod() {
-
- System.out.print("SelfDrivable");
- }
-
-}
diff --git a/Programmierung2/src/oop/Interface/SelfDrivable.java b/Programmierung2/src/oop/Interface/SelfDrivable.java
deleted file mode 100644
index 9237272..0000000
--- a/Programmierung2/src/oop/Interface/SelfDrivable.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package oop.Interface;
-
-public interface SelfDrivable {
- String AUTO_NAME = "BMW"; // ist default public static final
-
-
- void destination (String d);
- void drive();
-
- default void newMethod() {
-
- System.out.print("SelfDrivable");
- }
-
-
- static void klasseMethode() {
-
- System.out.print("Statiche Methode");
- }
-
- private void hilfsMethode() {
- System.out.println("Hilfsmethode, die von anderen Methoden im Interface genutzt wird");
- }
-
- default void standardMethode1() {
- System.out.println("Standardmethode 1");
- hilfsMethode(); // Aufruf der privaten Methode innerhalb des Interfaces
- }
-
-}
diff --git a/Programmierung2/src/oop/Interface/Test.java b/Programmierung2/src/oop/Interface/Test.java
deleted file mode 100644
index 93726d3..0000000
--- a/Programmierung2/src/oop/Interface/Test.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package oop.Interface;
-
-
-public class Test {
-
- public static void main(String[] args) {
- Movable a1 = new Auto();
-
- }
-
-}
diff --git a/Programmierung2/src/oop/Konstroktur/Konstroktur.java b/Programmierung2/src/oop/Konstroktur/Konstroktur.java
deleted file mode 100644
index 11268ea..0000000
--- a/Programmierung2/src/oop/Konstroktur/Konstroktur.java
+++ /dev/null
@@ -1,124 +0,0 @@
-package oop.Konstroktur;
-
-public class Konstroktur {
-
- private String name;
- private String beschreibung;
- private double price;
- private int quantity;
- private double discount;
- private String color;
-
-
- //Konstruktor:
- /*
- * Muss heißen wie die Klasse
- * Muss public sein
- * muss kein Return Wert haben
- * kann nicht abstrakt, static, final oder private sein
- * jedes Objekt kann nur eine einzige Konstruktor aufrufen
- * this.attribute = parameter
- * Default Konstroktur wird nur aufgerufen, wenn überhaupt kein Construktor haben
- */
-
- //Arten von Konstruktor:
-
-
- //1. Default Konstroktur, wird automatisch aufgerufen, wenn wir kein Konstruktor erstellen
-
- //public Konstroktur() {}
-
-
-
- // 2. no-argument constructor für default werte
- public Konstroktur() {
- this.name = "Kein Name";
- this.beschreibung = "Kein Beschreibung";
- this.price = 0.0;
- this.quantity = 0;
- this.discount = 0.0;
-
- }
-
- //3.1 argument constructor für dynamische werte
- public Konstroktur(String name, String beschreibung, double price, int quantity, double discount) {
- this.name = name;
- this.beschreibung = beschreibung;
- this.price = price;
- this.quantity = quantity;
- this.discount = discount;
- }
-
- //3.2 Aufruf eines andere Konstruktor ( Chaining)
- public Konstroktur(String name, String beschreibung, double price, int quantity, double discount,String color) {
-
- this (name,beschreibung,price,quantity,discount); // Aufruf der Konstruktor
- this.color = color;
- }
-
- // 4.1 Mit unterschiedlichen datentypen aber gleiche Parametern
- public Konstroktur(String n) {
- this.name = "Kein Name";
- this.beschreibung = "Kein Beschreibung";
- this.price = 0.0;
- this.quantity = 0;
- this.discount = 0.0;
-
- }
-
-
- // 4.2 Mit unterschiedlichen datentypen aber gleiche Parametern
- public Konstroktur(int n) {
- this.name = "Kein Name";
- this.beschreibung = "Kein Beschreibung";
- this.price = 0.0;
- this.quantity = 0;
- this.discount = 0.0;
-
- }
-
- // 5.1 andere Rheinfolge
- public Konstroktur(String n, int z) {
- this.name = "Kein Name";
- this.beschreibung = "Kein Beschreibung";
- this.price = 0.0;
- this.quantity = 0;
- this.discount = 0.0;
-
- }
-
-
- // 5.2 andere Rheinfolge
- public Konstroktur(int z , String n) {
- this.name = "Kein Name";
- this.beschreibung = "Kein Beschreibung";
- this.price = 0.0;
- this.quantity = 0;
- this.discount = 0.0;
- }
-
-
- // 6. Copy Constructor (dient dazu, Werte eines Objektes in anderem Objekt zu speicher)
- public Konstroktur(Konstroktur k1) {
- this.name = k1.name;
- this.beschreibung = k1.beschreibung;
- this.price = k1.price;
- this.quantity = k1.quantity;
- this.discount = k1.discount;
-
- }
-
-
-
-
- public void display() {
-
- System.out.println("Name = " + name);
- System.out.println("Beschreibung = " + beschreibung);
- System.out.println("price = " + price);
- System.out.println(" quantity = " + quantity);
- System.out.println("discount = " + discount);
- }
-
-
-}
diff --git a/Programmierung2/src/oop/Polymorphism/DailyMitarbeiter.java b/Programmierung2/src/oop/Polymorphism/DailyMitarbeiter.java
deleted file mode 100644
index aa24486..0000000
--- a/Programmierung2/src/oop/Polymorphism/DailyMitarbeiter.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package oop.Polymorphism;
-
-public class DailyMitarbeiter extends Mitarbeiter {
- private double Werktagspreis;
- private int tagesrate;
-
- public double getWerktagspreis() {
- return Werktagspreis;
- }
-
- public void setWerktagspreis(double werktagspreis) {
- Werktagspreis = werktagspreis;
- }
-
- public int getTagesrate() {
- return tagesrate;
- }
-
- public void setTagesrate(int tagesrate) {
- this.tagesrate = tagesrate;
- }
-
- public DailyMitarbeiter() {}
-
-
- public DailyMitarbeiter(String name, String adresse, String abteilung, String email, double gehalt, double Werktagspreis,int tagesrate) {
- super(name, adresse, abteilung, email, gehalt);
- this.Werktagspreis = Werktagspreis;
- this.tagesrate = tagesrate;
- }
-
-
-
-
-}
diff --git a/Programmierung2/src/oop/Polymorphism/GehaltMitarbeiter.java b/Programmierung2/src/oop/Polymorphism/GehaltMitarbeiter.java
deleted file mode 100644
index 0b7b232..0000000
--- a/Programmierung2/src/oop/Polymorphism/GehaltMitarbeiter.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package oop.Polymorphism;
-
-public class GehaltMitarbeiter extends Mitarbeiter {
-
- double bouns;
-
- public GehaltMitarbeiter() {}
-
- public double getBouns() {
- return bouns;
- }
-
- public void setBouns(double bouns) {
- this.bouns = bouns;
- }
-
- public GehaltMitarbeiter(String name, String adresse, String abteilung, String email, double gehalt,double bouns) {
- super(name, adresse, abteilung, email, gehalt);
- this.bouns = bouns;
-
- }
-
- @Override
- public double getGehalt() {
- return super.getGehalt() + this.bouns;
- }
- // entweder super.getGehalt()
- // oder gehalt von private zu protected umwandlen
-
-
-}
diff --git a/Programmierung2/src/oop/Polymorphism/HourlyMitarbeiter.java b/Programmierung2/src/oop/Polymorphism/HourlyMitarbeiter.java
deleted file mode 100644
index f05fc89..0000000
--- a/Programmierung2/src/oop/Polymorphism/HourlyMitarbeiter.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package oop.Polymorphism;
-
-public class HourlyMitarbeiter extends Mitarbeiter {
-
- private double arbeitsstundenpreis;
- private int stundensatz;
-
- public double getArbeitsstundenpreis() {
- return arbeitsstundenpreis;
- }
-
- public void setArbeitsstundenpreis(double arbeitsstundenpreis) {
- this.arbeitsstundenpreis = arbeitsstundenpreis;
- }
-
- public int getStundensatz() {
- return stundensatz;
- }
-
- public void setStundensatz(int stundensatz) {
- this.stundensatz = stundensatz;
- }
-
-
- @Override
- public double getGehalt() {
-
- return arbeitsstundenpreis * stundensatz;
- }
-
- public HourlyMitarbeiter() {}
-
-
-
- public HourlyMitarbeiter(String name, String adresse, String abteilung, String email, double gehalt,double arbeitsstundenpreis,int stundensatz ) {
- super(name, adresse, abteilung, email, gehalt);
- this.arbeitsstundenpreis = arbeitsstundenpreis;
- this.stundensatz = stundensatz;
- }
-
-
-
-}
diff --git a/Programmierung2/src/oop/Polymorphism/Mitarbeiter.java b/Programmierung2/src/oop/Polymorphism/Mitarbeiter.java
deleted file mode 100644
index b6c0052..0000000
--- a/Programmierung2/src/oop/Polymorphism/Mitarbeiter.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package oop.Polymorphism;
-
-public class Mitarbeiter {
-
- private String name;
- private String adresse;
- private String abteilung;
- private String email;
- private double gehalt;
-
-
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getAdresse() {
- return adresse;
- }
- public void setAdresse(String adresse) {
- this.adresse = adresse;
- }
-
- public String getAbteilung() {
- return abteilung;
- }
-
- public void setAbteilung(String abteilung) {
- this.abteilung = abteilung;
- }
-
- public String getEmail() {
- return email;
- }
- public void setEmail(String email) {
- this.email = email;
- }
-
- public double getGehalt() {
- return gehalt;
- }
- public void setGehalt(double gehalt) {
- this.gehalt = gehalt;
- }
-
- public Mitarbeiter(String name, String adresse, String abteilung, String email, double gehalt) {
- this.name = name;
- this.adresse = adresse;
- this.abteilung = abteilung;
- this.email = email;
- this.gehalt = gehalt;
- }
-
- public Mitarbeiter() {}
-
-}
diff --git a/Programmierung2/src/oop/Polymorphism/Polymorphism.java b/Programmierung2/src/oop/Polymorphism/Polymorphism.java
deleted file mode 100644
index 0cb614d..0000000
--- a/Programmierung2/src/oop/Polymorphism/Polymorphism.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package oop.Polymorphism;
-
-public class Polymorphism {
-
-
- /*Was ist das?
- *
- * Method Overloading: Schlüsselwort (ohne)
- *
- * Compile-time Polymorphism (Early binding or static binding) (frühe Bindung).
- *
- * • Statische Methoden können überladen werden
- * • den selben Namen
- * • Parameterlist unterscheiden sich in der Anzahl oder dem type der Parameter
- * • innerhalb der selben oder abgeleiteten Klasse
- *
- * Method Overriding: Schlüsselwort (@Override)
- *
- * runtime-time Polymorphism (Late binding or Dynamic Polymorphism) (späte Bindung)
- *
- * • Statische Methoden können nicht überschreiben werden
- * • geht nur in Kindklasse also nur in Verebung mit (@Override)
- * • den selben Namen
- * • den selben Rückgabetyp
- * • die selbe Parameterliste
- * • aber anderes Verhalten
- */
-
-
-}
diff --git a/Programmierung2/src/oop/Polymorphism/Test.java b/Programmierung2/src/oop/Polymorphism/Test.java
deleted file mode 100644
index ff11872..0000000
--- a/Programmierung2/src/oop/Polymorphism/Test.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package oop.Polymorphism;
-
-public class Test {
-
- public static void main(String[] args) {
-
- Mitarbeiter[] refarray = new Mitarbeiter[4]; // das geht auch
- refarray[0] = new Mitarbeiter();
- refarray[1] = new GehaltMitarbeiter();
- refarray[2] = new DailyMitarbeiter();
- refarray[3] = new HourlyMitarbeiter();
-
- for (int i = 0; i A ) Class B erbt von Class A
- * 2. Miultilever Verebung:(C-> B -> A ) Class C erbt von Class B und Class B erbt von Class A
- * 3. Hierarchical Verebung: ( B -> A und C -> A) Class B erbt von A und C von A
- *
- * Wichtig: Muliverebung ist in Java nicht unterstützt
- * Lösungsmöglichkeit (Interface) also mit Interface kann
- * ( B -> A und B -> C)
- */
-
-
-/*
- * verebung mit schlüsselwort extends
- * Kindklasse ruft ihre constructor und ihre VaterKonstroktor
- * constructor kann nicht verebt werden aber wir von kindklasse aufgerufen
- * also kindklasse gibt Parentconstructor und ihre constructor aus
- *
- */
-public class Verebung {
-
- protected String name;
- protected String emailAdresse;
- protected String phone;
- protected String wohnung;
- protected String adresse;
- protected int gerbutstag;
-
-
- public Verebung() {
-
- System.out.println("Partentklasse");
- }
-
-
-
- public Verebung(String name,String emailAdresse,String phone, String wohnung, String adresse,int gerbutstag) {
- this.name = name;
- this.emailAdresse = emailAdresse;
- this.phone = phone;
- this.wohnung = wohnung;
- this.adresse = adresse;
- this.gerbutstag = gerbutstag;
-
- }
-
-
- public String getName() {
- return name;
- }
-
-
- public void setName(String name) {
- this.name = name;
- }
-
-
- public String getEmailAdresse() {
- return emailAdresse;
- }
-
-
- public void setEmailAdresse(String emailAdresse) {
- this.emailAdresse = emailAdresse;
- }
-
-
- public String getPhone() {
- return phone;
- }
-
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
-
- public String getWohnung() {
- return wohnung;
- }
-
-
- public void setWohnung(String wohnung) {
- this.wohnung = wohnung;
- }
-
-
- public String getAdresse() {
- return adresse;
- }
-
-
- public void setAdresse(String adresse) {
- this.adresse = adresse;
- }
-
-
- public int getGerbutstag() {
- return gerbutstag;
- }
-
-
- public void setGerbutstag(int gerbutstag) {
- this.gerbutstag = gerbutstag;
- }
-
-
-}
diff --git a/Programmierung2/src/oop/Verebung/Verebung2.java b/Programmierung2/src/oop/Verebung/Verebung2.java
deleted file mode 100644
index 36e97bb..0000000
--- a/Programmierung2/src/oop/Verebung/Verebung2.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package oop.Verebung;
-
-public class Verebung2 extends Verebung {
-
- String projktName;
-
- public Verebung2(String name,String emailAdresse,String phone, String wohnung, String adresse,int gerbutstag,String projktName) {
- /*
- * wichtig: Super soll erste geschrieben werden
- * Super benutzen wir nur für Parentklass in seinem Kindklass
- *
- * Also ist falsch:
- * this.projktName = projktName;
- * super(name,emailAdresse,phone, wohnung,adresse,gerbutstag);
- *
- * Das geht auch:
- * super.attribute
- * super.methode
- */
-
-
- //super(); // default constructor aufrufen
- super(name,emailAdresse,phone, wohnung,adresse,gerbutstag);// constructor mit Argumenten aufrufen
- this.projktName = projktName;
- }
-
- public String getprojktName() {
-
-
- return projktName;
- }
-
- public void setprojktName(String projktName) {
-
- this.projktName = projktName;
- }
-
-}
diff --git a/Programmierung2/src/oop/Verebung/Verebung3.java b/Programmierung2/src/oop/Verebung/Verebung3.java
deleted file mode 100644
index e34d0ab..0000000
--- a/Programmierung2/src/oop/Verebung/Verebung3.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package oop.Verebung;
-
-public class Verebung3 extends Verebung2 {
-
- public Verebung3(String name,String emailAdresse,String phone, String wohnung, String adresse,int gerbutstag,String projktName) {
- super(name,emailAdresse,phone, wohnung,adresse,gerbutstag,projktName);// constructor mit Argumenten aufrufen
- System.out.println("Kindklasse 2");
- }
-
-}
diff --git a/Programmierung2/src/Übungen/Abrechnung.java b/Programmierung2/src/Übungen/Abrechnung.java
deleted file mode 100644
index 938d788..0000000
--- a/Programmierung2/src/Übungen/Abrechnung.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package Übungen;
-public abstract class Abrechnung {
- private int periode;
- private Mitarbeiter mitarbeiter;
-
- public Abrechnung(int periode, Mitarbeiter m){
-
- this.periode = periode;
- this.mitarbeiter = m;
- }
-
- public int getPeriode() {
-
- return this.periode;
- }
- public Mitarbeiter getMitarbeiter() {
-
- return this.mitarbeiter;
- }
- public abstract double getVerdienst();
-
- @Override
- public String toString() {
- return "Periode= " + periode + ", Mitarbeiter= " + mitarbeiter.toString() + ", Verdienst= " + getVerdienst();
- }
-
-}
\ No newline at end of file
diff --git a/Programmierung2/src/Übungen/BankSystem.java b/Programmierung2/src/Übungen/BankSystem.java
deleted file mode 100644
index bc5887f..0000000
--- a/Programmierung2/src/Übungen/BankSystem.java
+++ /dev/null
@@ -1,186 +0,0 @@
-package Übungen;
-import java.util.ArrayList;
-import java.util.Scanner;
-public class BankSystem {
-
- protected String name;
- protected String vorname;
- protected String password;
- protected String email;
- protected double kontosstand;
- protected int alter;
- protected Scanner scanner;
- protected ArrayList speicher;
- protected static int nextKundenNummer; // Statische Variable für die nächste Kunden-ID
-
- public BankSystem() {};
-
- public BankSystem(String name, String vorname, String password , String email,int alter) {
- this.name = name;
- this.vorname = vorname;
- this.password = password;
- this.email = email;
- this.kontosstand = 0; // 0€
- this.setAlter(alter);
- this.scanner = new Scanner(System.in);
- this.speicher = new ArrayList<>();
- nextKundenNummer++;
- }
-
- public void ueberweisung(BankSystem empfaenger) {
-
- System.out.println("KontoStand: " + this.kontosstand + " €" + "\n" + this.getVorname() + " " + this.getName());
-
- System.out.println("Geben Sie den Betrag ein: ");
- double betrag = scanner.nextDouble();
- scanner.nextLine();
- System.out.println("Geben Sie den Password ein: ");
- String password = scanner.nextLine();
-
- if (checkKontoStand(betrag) && checkPassword(password)) {
- this.kontosstand -= betrag;
- speicher.add(- (betrag));
-
- empfaenger.kontosstand +=betrag;
- empfaenger.speicher.add(betrag);
- System.out.println("Das wurde erfolgreich überwiesen");
- }
-
- else
- System.out.println("Du hast kein genug Geld auf deinem Konto!");
- }
-
- public void kontoauszug(){
-
- int zähler = 3;
- System.out.print("Bitte geben Sie erst den Password ein: ");
- String password = scanner.nextLine();
- while(!checkPassword(password) && zähler > 1) {
- zähler--;//2
- System.out.println("Du hast " + zähler + " Versuche.");
- System.out.print("Bitte geben Sie erst den Password ein: ");
- password = scanner.nextLine();
-
- }
- if (zähler == 1)
- System.err.println("Dein Konto wurde gespert!");
-
- else {
- double auszahlung = 0;
- double einzahlung = 0;
- for (double i : speicher) {
- if (i < 0) {
- System.out.println("Ihre Auszahlung: "+ i);
- auszahlung += i;
- }
- else {
- System.out.println("Ihre Einzahlung: "+ i);
- einzahlung += i;
- }
- }
- System.out.println("Die Summe alle Auszahlungen = "+ auszahlung);
- System.out.println("Die Summe alle Einzahlungen = "+ einzahlung);
- System.out.println("Dein aktuelles Kontostand = "+ this.getKontosstand());
- }
-
- }
-
- private boolean checkPassword (String password) {
- return this.password.equals(password);
- }
-
- protected boolean checkKontoStand(double geld) {
- return geld <= this.kontosstand;
- }
-
-
- public void auszahlen(){
-
- System.out.println("Bitte geben Sie den Betrag ein: ");
-
- double auszahlen = scanner.nextDouble();
- scanner.nextLine();
- System.out.print("Bitte geben Sie den Password ein: ");
- String password = scanner.nextLine();
- if (checkPassword(password)) {
- if (checkKontoStand(auszahlen)) {
- this.kontosstand -= auszahlen;
- speicher.add(-(auszahlen));
- System.out.println("Auszahlung erfolgreich! Neuer Kontostand: " + this.kontosstand);
-
- }
-
- else
- System.out.println("Geld reicht nicht aus!");
- }
-
- else
- System.out.println("falsches Password!");
- }
-
-
-
- public void addGeld(double geld) {
-
- this.kontosstand += geld;
- speicher.add(geld);
- System.out.println("Einzahlung erfolgreich! Neuer Kontostand: " + this.kontosstand);
-
- }
-
-
-
-
-
- @Override
- public String toString() {
- return "BankSystem [name=" + name + ", vorname=" + vorname + ", password=" + password + ", email=" + email
- + ", kontosstand=" + kontosstand + ", 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 String getPassword() {
- return password;
- }
- public void setPassword(String password) {
- this.password = password;
- }
- public String getEmail() {
- return email;
- }
- public void setEmail(String email) {
- this.email = email;
- }
- public double getKontosstand() {
- return kontosstand;
- }
- public void setKontosstand(double kontosstand) {
- this.kontosstand = kontosstand;
- }
-
- public int getAlter() {
- return alter;
- }
-
- public void setAlter(int alter) {
- if (alter <= 20)
- System.out.println("Nein,du musst Kundenart kriegen!");
- else
- this.alter = alter;
- }
-
-
-
-
-}
diff --git a/Programmierung2/src/Übungen/BlackJack/BlackJack.java b/Programmierung2/src/Übungen/BlackJack/BlackJack.java
deleted file mode 100644
index 9f6ffbb..0000000
--- a/Programmierung2/src/Übungen/BlackJack/BlackJack.java
+++ /dev/null
@@ -1,273 +0,0 @@
-package Übungen.BlackJack;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Random;
-import java.util.Scanner;
-
-// Modell
-public class BlackJack {
- private String spielerName;
- private int guthaben;
- private int punkte;
- private int speichereEinsatz;
- private boolean hitspiele;
-
- public BlackJack(String spielerName, int guthaben) {
- this.spielerName = spielerName;
- this.guthaben = guthaben;
- this.punkte = 0;
- this.speichereEinsatz = 0;
- this.hitspiele = false;
- }
-
- public int getSpeichereEinsatz() {
- return speichereEinsatz;
- }
-
- public void setSpeichereEinsatz(int speichereEinsatz) {
- this.speichereEinsatz = speichereEinsatz;
- }
-
- public String getSpielerName() {
- return spielerName;
- }
-
- public void setSpielerName(String spielerName) {
- this.spielerName = spielerName;
- }
-
- public int getGuthaben() {
- return guthaben;
- }
-
- public void addGuthaben(int betrag) {
- this.guthaben += betrag;
- }
-
- public void subtrahiereGuthaben(int betrag) {
- this.guthaben -= betrag;
- }
-
- public int getPunkte() {
- return punkte;
- }
-
- public void addPunkte(int punkte) {
- this.punkte += punkte;
- }
-
- public boolean isHitspiele() {
- return hitspiele;
- }
-
- public void setHitspiele(boolean hitspiele) {
- this.hitspiele = hitspiele;
- }
-
- @Override
- public String toString() {
- return "Spieler [Name=" + spielerName + ", Guthaben=" + guthaben + "€]";
- }
-}
-
-// Die GUI klasse oder View
-class BlackJackView {
- private Scanner scanner;
-
- public BlackJackView() {
- scanner = new Scanner(System.in);
- }
-
- public void zeigeSpielerDetails(BlackJack spieler) {
- System.out.println(spieler.getSpielerName() + " hat " + spieler.getGuthaben() + "€ und " + spieler.getPunkte()
- + " Punkte.");
- }
-
- public void zeigeNachricht(String nachricht) {
- System.out.println(nachricht);
- }
-
- public int frageEinsatz() {
- System.out.println("Wähle einen Einsatz von: [5€, 10€, 25€, 100€]");
- return scanner.nextInt();
- }
-
- public String frageObGuthabenAufladen() {
- System.out.println("Du hast nicht genug Guthaben. Möchtest du Guthaben aufladen? Ja/Nein");
- return scanner.next();
- }
-
- public int frageGuthabenBetrag() {
- System.out.println("Wie viel möchtest du aufladen?");
- return scanner.nextInt();
- }
-
- public String frageObHitOderStand() {
- System.out.println("Du hast nicht genug Guthaben. Möchtest du Guthaben aufladen? Ja/Nein");
- return scanner.next();
- }
-
- public void schließeScanner() {
- scanner.close();
- }
-}
-
-// Controller verwaltung das Spielabluaf
-class Spiel {
-
- private BlackJack spieler1;
- private BlackJack spieler2;
- private ArrayList kartendeck;
- private Random random;
- private ArrayList erlaubteEinsätze;
- private BlackJackView view;
-
- public Spiel(BlackJack spieler1, BlackJack spieler2, BlackJackView view) {
- this.spieler1 = spieler1;
- this.spieler2 = spieler2;
- this.view = view;
- this.random = new Random();
- this.erlaubteEinsätze = new ArrayList<>();
- kartendeck = new ArrayList<>();
- initialisiereKartendeck();
- }
-
- public void initialisiereKartendeck() {
- for (int i = 1; i <= 11; i++) {
- kartendeck.add(i);
- }
- Collections.shuffle(kartendeck);
- }
-
- public ArrayList getKartendeck() {
- return kartendeck;
- }
-
- public boolean guthabenAufladen(BlackJack spieler) {
- String antwort = view.frageObGuthabenAufladen();
- if (antwort.equalsIgnoreCase("ja")) {
- int betrag = view.frageGuthabenBetrag();
- if (betrag > 0) {
- spieler.addGuthaben(betrag);
- view.zeigeNachricht("Dein neues Guthaben: " + spieler.getGuthaben() + "€");
- return true;
- }
- }
- return false;
- }
-
- public boolean einsatzBestimmen(BlackJack spieler) {
- erlaubteEinsätze.add(5);
- erlaubteEinsätze.add(10);
- erlaubteEinsätze.add(25);
- erlaubteEinsätze.add(100);
-
- boolean einsatzAkzeptiert = false;
- view.zeigeNachricht(
- "Hallo " + spieler.getSpielerName() + ", dein aktuelles Guthaben: " + spieler.getGuthaben() + "€");
- while (!einsatzAkzeptiert) {
- if (spieler.getGuthaben() < 5) {
- if (guthabenAufladen(spieler)) {
- continue;
- } else {
- return false;
- }
- }
-
- int einsatz = view.frageEinsatz();
- if (!erlaubteEinsätze.contains(einsatz)) {
- view.zeigeNachricht("Falsche Eingabe. Bitte versuche es erneut.");
- continue;
- }
-
- if (einsatz > spieler.getGuthaben()) {
- if (guthabenAufladen(spieler)) {
- continue;
- } else {
- return false;
- }
- }
-
- if (erlaubteEinsätze.contains(einsatz)) {
- spieler.setSpeichereEinsatz(einsatz);
- spieler.subtrahiereGuthaben(einsatz);
- view.zeigeNachricht("Neues Guthaben: " + spieler.getGuthaben() + "€");
- einsatzAkzeptiert = true;
- }
- }
- return einsatzAkzeptiert;
- }
-
- public void zweiKartenZiehen() {
- int punkte1 = zieheZweiKarten(spieler1);
- view.zeigeNachricht(spieler1.getSpielerName() + " hat " + punkte1 + " Punkte.");
-
- int punkte2 = zieheZweiKarten(spieler2);
- view.zeigeNachricht(spieler2.getSpielerName() + " hat " + punkte2 + " Punkte.");
- }
-
- private int zieheZweiKarten(BlackJack spieler) {
- int ersteKarte = kartendeck.get(random.nextInt(kartendeck.size()));
- int zweiteKarte = kartendeck.get(random.nextInt(kartendeck.size()));
- int summe = ersteKarte + zweiteKarte;
- spieler.addPunkte(summe);
- return summe;
- }
-
- public void gewinnerPrüfen(BlackJack spieler1, BlackJack spieler2) {
- if (spieler1.getPunkte() < 22 && (spieler1.getPunkte() > spieler2.getPunkte() || spieler2.getPunkte() > 21)) {
- int gewinn = spieler1.getSpeichereEinsatz() * 2;
- spieler1.addGuthaben(gewinn);
- view.zeigeNachricht(
- spieler1.getSpielerName() + " hat gewonnen! Neues Guthaben: " + spieler1.getGuthaben() + "€");
- } else if (spieler2.getPunkte() < 22
- && (spieler2.getPunkte() > spieler1.getPunkte() || spieler1.getPunkte() > 21)) {
- int gewinn = spieler2.getSpeichereEinsatz() * 2;
- spieler2.addGuthaben(gewinn);
- view.zeigeNachricht(
- spieler2.getSpielerName() + " hat gewonnen! Neues Guthaben: " + spieler2.getGuthaben() + "€");
- } else {
- view.zeigeNachricht("Unentschieden!");
- }
- }
-
- public void bestimmeSpieabluaf(BlackJack spieler) {
- view.zeigeNachricht("------------------------------------------");
- view.zeigeNachricht("Willkommen im Blackjack-Spiel:");
- zweiKartenZiehen();
- spieler.setHitspiele(true);
- while (spieler.isHitspiele()) {
- if (spieler.getPunkte() >= 21)
- spieler.setHitspiele(false);
-
- if (spieler.isHitspiele()) {
- view.zeigeNachricht(spieler.getSpielerName() + " : Möchten Sie hit oder stand? Aktuelle Hand: "
- + spieler.getPunkte());
- String auswahl = view.frageObHitOderStand();
-
- if (auswahl.equalsIgnoreCase("hit")) {
- eineKarteZiehen(spieler);
- spielerPunkteAnzeigen(spieler);
- } else if (auswahl.equalsIgnoreCase("stand")) {
- spieler.setHitspiele(false);
- spielerPunkteAnzeigen(spieler);
- } else {
- view.zeigeNachricht("Falsche Eingabe: Bitte geben Sie entweder 'hit' oder 'stand' ein.");
- continue;
- }
- }
- }
- }
-
- public void eineKarteZiehen(BlackJack spieler) {
- int karte = kartendeck.get(random.nextInt(kartendeck.size()));
- spieler.addPunkte(karte);
- view.zeigeNachricht(spieler.getSpielerName() + " hat " + spieler.getPunkte() + " Punkte.");
- }
-
- public void spielerPunkteAnzeigen(BlackJack spieler) {
- view.zeigeNachricht(spieler.getSpielerName() + " hat " + spieler.getPunkte() + " Punkte.");
- }
-
-}
diff --git a/Programmierung2/src/Übungen/BlackJack/JunitTest.java b/Programmierung2/src/Übungen/BlackJack/JunitTest.java
deleted file mode 100644
index 2ed1442..0000000
--- a/Programmierung2/src/Übungen/BlackJack/JunitTest.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package Übungen.BlackJack;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.junit.jupiter.api.Assertions.*;
-
-import java.util.ArrayList;
-import java.util.Collections;
-
-import org.junit.jupiter.api.Test;
-
-class JunitTest {
- // (expected,actual (welche wert gibt der Methode zurück?),message fehle)
-
- @Test
- void modellKlasse() {
- // assertEquals(überprüft Parameter miteinander)
- BlackJack t1 = new BlackJack("obai",20);
- BlackJack t2 = new BlackJack("omar",21);
- BlackJackView v1 = new BlackJackView();
- Spiel spie1 = new Spiel(t1,t2,v1);
-// assertEquals("obai", t1.getSpielerName(), "Der Name sollte 'obai' sein.");
-// assertEquals(21,t1.getGuthaben(),"Guthaben habe stimmen nicht");
-// assertNotNull(t1,"es ist nicht null");
-
- // teste arrayList zahlen
-// ArrayList kartendeck = new ArrayList<>();
-// for (int i = 1; i <= 11; i++) {
-// kartendeck.add(i);
-// }
-// assertEquals(kartendeck,spie1.getKartendeck());
-
- //aktziptieren nur einen Bedinung die entweder wahr oder true ist
-// assertFalse(spie1.einsatzBestimmen(t1));
-// assertFalse(spie1.einsatzBestimmen(t1));
-
- spie1.zweiKartenZiehen();
- }
-
-}
diff --git a/Programmierung2/src/Übungen/BlackJack/Test.java b/Programmierung2/src/Übungen/BlackJack/Test.java
deleted file mode 100644
index fd8a40a..0000000
--- a/Programmierung2/src/Übungen/BlackJack/Test.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package Übungen.BlackJack;
-import java.util.ArrayList;
-import java.util.Scanner;
-
-public class Test {
-
- public static void main(String[] args) {
- Scanner scan = new Scanner(System.in);
-
- BlackJack spieler1 = new BlackJack("Obai", 500);
- BlackJack spieler2 = new BlackJack("abd", 100);
- BlackJackView spiel1 = new BlackJackView();
-
- System.out.println(spieler1);
- System.out.println(spieler2);
- System.out.println();
-
-
- Spiel newSpiel = new Spiel(spieler1, spieler2,spiel1);
- boolean bestimmespieler;
-
- bestimmespieler = newSpiel.einsatzBestimmen(spieler1);
- if (bestimmespieler)
- bestimmespieler = newSpiel.einsatzBestimmen(spieler2);
-
-
- if (bestimmespieler) {
- newSpiel.zweiKartenZiehen();
- newSpiel.bestimmeSpieabluaf(spieler1);
- }
-
- spiel1.schließeScanner();
- }
-
-}
diff --git a/Programmierung2/src/Übungen/GehaltsAbrechnung.java b/Programmierung2/src/Übungen/GehaltsAbrechnung.java
deleted file mode 100644
index bad1adf..0000000
--- a/Programmierung2/src/Übungen/GehaltsAbrechnung.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package Übungen;
-public class GehaltsAbrechnung extends Abrechnung {
-
- private double gehalt;
-
- public GehaltsAbrechnung(int periode, Mitarbeiter m, double gehalt){
-
- super(periode, m);
- this.gehalt = gehalt;
- }
-
- @Override
- public double getVerdienst() {
- return this.gehalt;
- }
-}
diff --git a/Programmierung2/src/Übungen/Kunden.java b/Programmierung2/src/Übungen/Kunden.java
deleted file mode 100644
index e4794eb..0000000
--- a/Programmierung2/src/Übungen/Kunden.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package Übungen;
-public class Kunden {
-
- public static void main(String[] args) {
- BankSystem kunde1 = new BankSystem("Albek","Obai","12345","obay@gmail.com",25);
-
- kunde1.addGeld(50000);
- System.out.println(kunde1.toString());
-
- System.out.println();
- System.out.println();
-
- BankSystem s1 = new SchuelerKonto("Albek","Obai","12345","obay@gmail.com",12,"Justus",9);
- s1.addGeld(120);
-
- System.out.println(s1.toString());
-
-
-
-
-// KundenBank k1 = new KundenBank();
-// k1.setSpeicherKunde(kunde1);;
-// System.out.println(k1.getSpeicherKunde());
- }
-
-}
diff --git a/Programmierung2/src/Übungen/KundenBank.java b/Programmierung2/src/Übungen/KundenBank.java
deleted file mode 100644
index 7cb783f..0000000
--- a/Programmierung2/src/Übungen/KundenBank.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package Übungen;
-
-import java.util.ArrayList;
-
-public class KundenBank {
-
- private ArrayList speicherKunde = new ArrayList<>();
-
- public ArrayList getSpeicherKunde() {
- return speicherKunde;
- }
-
- public void setSpeicherKunde(BankSystem speicherKunde) {
- this.speicherKunde.add(speicherKunde);
- }
-
- @Override
- public String toString() {
- return "KundenBank [BankKunden=" + speicherKunde + "]";
- }
-
-
-
-}
diff --git a/Programmierung2/src/Übungen/Lohnabrechnung.java b/Programmierung2/src/Übungen/Lohnabrechnung.java
deleted file mode 100644
index c311e68..0000000
--- a/Programmierung2/src/Übungen/Lohnabrechnung.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package Übungen;
-public class Lohnabrechnung extends Abrechnung {
-
- private double stundenLohn;
- private double anzahlStunden;
-
- public Lohnabrechnung(int periode, Mitarbeiter m, double stundenLohn, int anzahlStunden){
-
- super(periode, m);
- this.stundenLohn = stundenLohn;
- this.anzahlStunden = anzahlStunden;
- }
-
- public double getVerdienst(){
-
- return stundenLohn * anzahlStunden;
- }
-}
diff --git a/Programmierung2/src/Übungen/Mitarbeiter.java b/Programmierung2/src/Übungen/Mitarbeiter.java
deleted file mode 100644
index 59dc30d..0000000
--- a/Programmierung2/src/Übungen/Mitarbeiter.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package Übungen;
-public class Mitarbeiter {
- protected int id;
- protected String name;
- private static int counterID = 0;
-
-
- public Mitarbeiter(){}
-
- public Mitarbeiter(String name){
-
- this.id = ++counterID;
- this.name = name;
- }
-
- public String getName(){
- return name;
- }
- public void setName(String name){
- this.name = name;
- }
-
- @Override
- public String toString(){
- return "Name = " + name + ", Id = " + id;
- }
-}
diff --git a/Programmierung2/src/Übungen/PersonalVerwaltung.java b/Programmierung2/src/Übungen/PersonalVerwaltung.java
deleted file mode 100644
index 3a6daf0..0000000
--- a/Programmierung2/src/Übungen/PersonalVerwaltung.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package Übungen;
-import java.lang.reflect.Array;
-import java.util.ArrayList;
-
-public class PersonalVerwaltung extends Mitarbeiter {
-
- ArrayList mitarbeiterList = new ArrayList<>();
- ArrayList AbrechnungenList = new ArrayList<>();
-
- public void setAbrechnung(Abrechnung ab){
- this.AbrechnungenList.add(ab);
- }
-
- public ArrayList getAbrechnungs(){
-
- return this.AbrechnungenList;
- }
-
- public void removeAbrechnung(Abrechnung ab){
-
- if (this.AbrechnungenList.contains(ab))
- this.AbrechnungenList.remove(ab);
- else
- System.err.println("Abrechnung ist nicht da!");
- }
-
-
- public void setMitarbeiter(Mitarbeiter ma){
-
- this.mitarbeiterList.add(ma);
- }
- public ArrayList getMitarbeiter(){
-
- return mitarbeiterList;
- }
-
- public void removeMitarbeiter(Mitarbeiter m1){
- if (this.mitarbeiterList.contains(m1))
- this.mitarbeiterList.remove(m1);
- else
- System.err.println("Mitarbeiter existiert nicht!");;
- }
-
-
-}
diff --git a/Programmierung2/src/Übungen/Radio.java b/Programmierung2/src/Übungen/Radio.java
deleted file mode 100644
index a749f75..0000000
--- a/Programmierung2/src/Übungen/Radio.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package Übungen;
-public class Radio {
- boolean eingeschaltet;
- int lautstaerker;
- double frequenz;
-
- public Radio(){}
-
- public Radio(boolean eingeschaltet, int lautstaerker, double frequenz){
-
- this.eingeschaltet = eingeschaltet;
- this.lautstaerker = lautstaerker;
- this.frequenz = frequenz;
- }
-
- public void lauter(){
- if (this.eingeschaltet)
- while (lautstaerker <= 10)
- lautstaerker++;
- else
- System.err.println("Das Radio ist aus!");
-
- System.out.println("Lautstärke des Radios= "+ lautstaerker);
- }
-
- public void leiser(){
- if (this.eingeschaltet)
- while (lautstaerker >= 0)
- lautstaerker--;
- else
- System.out.println("Das Radio ist aus!");
-
- System.out.println("Lautstärke des Radios= "+ lautstaerker);
- }
-
- public String an(){
- this.eingeschaltet = true;
- return "an";
- }
-
- public boolean aus(){
- return this.eingeschaltet = false;
- }
-
- public void waehleSender(double frequenz){
- if (frequenz < 85.0 || frequenz > 110.0)
- this.frequenz = 99.9;
- else
- this.frequenz = frequenz;
- }
-
- @Override
- public String toString(){
- if (this.eingeschaltet)
- return"Radio an: Freq = " + this.frequenz + ", Laut = " + this.lautstaerker;
-
- return "Radio ist aus!";
- }
-
-}
diff --git a/Programmierung2/src/Übungen/SchuelerKonto.java b/Programmierung2/src/Übungen/SchuelerKonto.java
deleted file mode 100644
index ea43a88..0000000
--- a/Programmierung2/src/Übungen/SchuelerKonto.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package Übungen;
-
-public class SchuelerKonto extends BankSystem {
-
- private String schulename;
- private int klasse;
-
- public SchuelerKonto(String name, String vorname, String password, String email, int alter, String schulename, int klasse) {
- super(name, vorname, password, email, alter);
- this.schulename = schulename;
- this.klasse = klasse;
- }
-
- @Override
- public void addGeld(double geld) {
- if (this.kontosstand < 500) {
- this.kontosstand += geld;
- speicher.add(geld);
- System.out.println("Einzahlung erfolgreich! Neuer Kontostand: " + this.kontosstand);
- } else {
- System.out.println("Du kannst keine neuen Einzahlungen vornehmen.");
- }
- }
-
- @Override
- public void ueberweisung(BankSystem empfaenger) {
- throw new UnsupportedOperationException("Überweisungen sind für Schülerkonten nicht erlaubt.");
- }
-
- @Override
- public void setAlter(int alter) {
- if (alter > 20)
- System.out.println("Nein, du kannst nicht die Kundenart Schueler haben!");
- else
- this.alter = alter;
- }
-
- @Override
- public String toString() {
- return "SchuelerKonto [Schulename=" + schulename + ", Klasse=" + klasse + ", name=" + name + ", vorname="
- + vorname + ", password=" + password + ", email=" + email + ", kontosstand=" + kontosstand + ", alter="
- + alter + "]";
- }
-
- public String getSchulename() {
- return schulename;
- }
-
- public void setSchulename(String schulename) {
- this.schulename = schulename;
- }
-
- public int getKlasse() {
- return klasse;
- }
-
- public void setKlasse(int klasse) {
- this.klasse = klasse;
- }
-}
diff --git a/Programmierung2/src/Übungen/StudentenKunden.java b/Programmierung2/src/Übungen/StudentenKunden.java
deleted file mode 100644
index 8afc1ab..0000000
--- a/Programmierung2/src/Übungen/StudentenKunden.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package Übungen;
-
-public class StudentenKunden extends BankSystem {
-
-
-
-}
diff --git a/Programmierung2/src/Übungen/TestMitarbeiter.java b/Programmierung2/src/Übungen/TestMitarbeiter.java
deleted file mode 100644
index 48bb6a6..0000000
--- a/Programmierung2/src/Übungen/TestMitarbeiter.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package Übungen;
-public class TestMitarbeiter {
-
- public static void main(String[] args) {
- Mitarbeiter m1 = new Mitarbeiter("obai");
- System.out.println(m1.toString());
-
- Mitarbeiter m2 = new Mitarbeiter("Omar");
-
- PersonalVerwaltung p1 = new PersonalVerwaltung();
- p1.setMitarbeiter(m1);
- p1.setMitarbeiter(m2);
- p1.removeMitarbeiter(m1);
- System.out.println(p1.getMitarbeiter());
-
- GehaltsAbrechnung gh1 = new GehaltsAbrechnung(124, m2, 40);
- System.out.println(gh1.toString());
-
- }
-}
diff --git a/Programmierung2/src/Übungen/TestRadio.java b/Programmierung2/src/Übungen/TestRadio.java
deleted file mode 100644
index ce10026..0000000
--- a/Programmierung2/src/Übungen/TestRadio.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package Übungen;
-public class TestRadio {
-
- public static void main(String[] args) {
- Radio r1 = new Radio(true,2,90);
- //System.out.println(r1.toString());
- r1.waehleSender(75.0);
- // System.out.println(r1.toString());
- r1.aus();
- System.out.println(r1.toString());
- }
-
-}
diff --git a/Programmierung2/src/Übungen/Tic_Tac_Toe.java b/Programmierung2/src/Übungen/Tic_Tac_Toe.java
deleted file mode 100644
index bb1f7ec..0000000
--- a/Programmierung2/src/Übungen/Tic_Tac_Toe.java
+++ /dev/null
@@ -1,111 +0,0 @@
-package Übungen;
-import java.util.Scanner;
-
-public class Tic_Tac_Toe {
- static Scanner scan = new Scanner(System.in);
- static String[][] spielField = new String[3][3];
- static final String playerx = "x" ;
- static final String playero = "o" ;
-
- public static void main(String[] args){
-
-
- printSpielfeld();
- while (true) {
- System.out.println("Bitte geben Sie 'x' und neue Position ein: ");
- String playerx =scan.nextLine();
- int x = scan.nextInt();
- int y = scan.nextInt();
- while (!checkSet(playerx, x, y)) {
- scan.nextLine();
- System.out.println("Falsche Eingabe! Versuchen Sie nochmal: ");
- playerx =scan.nextLine();
- x = scan.nextInt();
- y = scan.nextInt();
- if (checkSet(playerx, x, y))
- break;
- }
- ausgabeSpielFeld(playerx, x, y);
- if (checkGewinner(playerx)) {
- System.out.println("Spieler X hat gewonnen!");
- break;
- }
- scan.nextLine();
-
- System.out.println("Bitte geben Sie 'O' und neue Position ein: ");
- String playero =scan.nextLine();
- x = scan.nextInt();
- y = scan.nextInt();
- while (!checkSet(playero, x, y)) {
- scan.nextLine();
- System.out.println("Falsche Eingabe! Versuchen Sie nochmal: ");
- playero =scan.nextLine();
- x = scan.nextInt();
- y = scan.nextInt();
- }
- ausgabeSpielFeld(playero, x, y);
- if (checkGewinner(playero)) {
- System.out.println("Spieler O hat gewonnen!");
- break;
- }
- scan.nextLine();
- }
- }
-
- public static boolean checkSet(String X_O, int x, int y){
- if ( x < 0 || x > 2 || y < 0 || y > 2)
- return false;
-
- if (!(spielField[x][y].equals("-")) )
- return false;
-
- return true;
- }
-
- public static boolean checkGewinner(String player){
- for(int i = 0 ; i < 3; i++){
- if (spielField[i][0].equals(player) && spielField[i][1].equals(player) && spielField[i][2].equals(player))
- return true;
- }
- for (int i = 0; i < 3; i++){
- if (spielField[0][i].equals(player) &&spielField[1][i].equals(player) &&spielField[2][i].equals(player))
- return true;
- }
- if (spielField[0][0].equals(player)&& spielField[1][1].equals(player)&& spielField[2][2].equals(player))
- return true;
-
- if (spielField[0][2].equals(player)&& spielField[1][1].equals(player)&& spielField[2][0].equals(player))
- return true;
-
- return false;
- }
-
- public static void ausgabeSpielFeld(String X_O, int x, int y){
- spielField[x][y] = X_O;
- for (int i = 0; i < 3; i++){
- for (int j = 0; j < 3; j++){
- System.out.print(spielField[i][j] + "|");
- }
- System.out.println();
- }
-
-
-
- }
- public static void printSpielfeld(){
- for (int i = 0; i < 3; i++){
- for (int j = 0; j < 3; j++){
- if (j == 2){
- spielField[i][j] = "-";
- System.out.print(spielField[i][j]);
- }else{
- spielField[i][j] = "-";
- System.out.print(spielField[i][j]);
- System.out.print("|");
- }
- }
- System.out.println();
- }
-
- }
-}
diff --git a/Programmierung2/src/Übungen/Whatsapp.java b/Programmierung2/src/Übungen/Whatsapp.java
deleted file mode 100644
index 17b8971..0000000
--- a/Programmierung2/src/Übungen/Whatsapp.java
+++ /dev/null
@@ -1,228 +0,0 @@
-package Übungen;
-import java.util.ArrayList;
-
-public class Whatsapp {
- private String name;
- private String teleN;
- private String nachricht;
- private ArrayList speicherContact;
- private ArrayList speicherNummern;
- private ArrayList blockContact;
-
- public Whatsapp(String name, String teleN) {
- this.name = name;
- this.nachricht = null;
- this.teleN = teleN;
- this.speicherContact = new ArrayList<>();
- this.blockContact = new ArrayList<>();
- speicherContact.add(this.name);
- this.speicherNummern = new ArrayList<>();
- speicherNummern.add(teleN);
- }
-
-
- public void addContact(String name, String teleN){
- if (name != null && teleN != null){
- speicherContact.add(name);
- speicherNummern.add(teleN);
- }
- }
-
- public ArrayList getContact(){
- return this.speicherContact;
- }
-
- public void printContacte(){
- System.out.println("Deine KontaktListe: ");
-
- for (int i = 0; i < speicherContact.size();i++)
- System.out.println("Name: " + speicherContact.get(i) +", Telefonummer: " + speicherNummern.get(i));
-
- }
-
- public void blocKontakt(Whatsapp block) {
- if (!blockContact.contains(block.getName())) {
- this.blockContact.add(block.getName());
- System.out.println(this.name + " hat " + block.getName() + " blockiert");
- }
-
- else
- System.err.println("Ist bereit Blockiert");
- }
-
- public ArrayList getblockContact(){
- return blockContact;
- }
-
- public String searchContact(String name){
- for (int i = 0; i saveMessages;
-
- public Nachrichten(Whatsapp sender, Whatsapp receiver) {
- this.sender = sender; //obai
- this.receiver = receiver; //omar
- this.saveMessages = new ArrayList<>();
- }
-
- public void sendMessage(Whatsapp sender, Whatsapp receiver, String message) {
- if (receiver.getblockContact().contains(sender.getName())) {
- String blockMessage = "Du wurdest von " + receiver.getName() + " blockiert!";
- System.err.println(blockMessage);
- return;
- }
- if (sender.getblockContact().contains(receiver.getName())) {
- String blockMessage = "Du hast " + receiver.getName() + " blockiert!";
- System.err.println(blockMessage);
- return;
- }
-
- if (receiver != null) {
- receiver.setNachricht(message);
- String infoMessage = sender.getName() + " sendet " + receiver.getName() + " : " + receiver.getNachricht();
- saveMessages.add(infoMessage);
- }
- }
-
-
- public ArrayList getinfoMessage() {
- return saveMessages;
- }
-
- public void printsaveMessages() {
- System.out.println("Chat Room: ");
- for(String s:saveMessages)
- System.out.println(s);
- }
-
-}
-
-class Groups{
- Whatsapp hersteller;
- ArrayList admins;
- ArrayList addmembers;
- ArrayList allMessages;
- String groupsname;
-
-
- Groups(Whatsapp hersteller, String groupsname){
- this.hersteller = hersteller;
- this.groupsname = groupsname;
- this.addmembers = new ArrayList<>();
- this.admins = new ArrayList<>();
- this.allMessages = new ArrayList<>();
- addmembers.add(hersteller);
- admins.add(hersteller);
- System.out.println(this.hersteller.getName() + "(Admin): hat die Groupe " + this.groupsname + " erstellt");
- }
-
- public void sendeMessages(Whatsapp sender, String message) {
- if (addmembers.contains(sender)) {
- String speicher = sender.getName() + " : " + message ;
- allMessages.add(speicher);
- }
- }
-
- public ArrayList getallMessages(){
- return allMessages;
- }
-
- public void printallMessages() {
- for (String s: allMessages)
- System.out.println(s);
- }
-
- public void removeMember(Whatsapp remover, Whatsapp toBeRemoved) {
- if (!admins.contains(remover)) {
- System.err.println("Du bist kein Admin");
- return;
- }
- if (!addmembers.contains(toBeRemoved)) {
- System.err.println("Mitglied nicht in der Gruppe");
- return;
- }
- addmembers.remove(toBeRemoved);
- System.out.println(toBeRemoved.getName() + " wurde aus der Gruppe entfernt.");
- }
-
-
- public void addMembers(Whatsapp member) {
- if (!addmembers.contains(member))
- addmembers.add(member);
- else
- System.err.println("member ist bereits da!");
- }
-
- public void addAdmin(Whatsapp admin, Whatsapp toBeAdmin) {
- if (!admins.contains(admin)) {
- System.err.println("Du musst Admin sein");
- return;
- }
- if (admins.contains(toBeAdmin)) {
- System.err.println(toBeAdmin.getName() + " ist bereits Admin.");
- return;
- }
- admins.add(toBeAdmin);
- System.out.println(admin.getName() + " hat " + toBeAdmin.getName() + " als Admin benannt.");
- }
-
-
- public ArrayList getaddmembers(){
-
- return addmembers;
- }
-
- public void printaddmembers(Whatsapp printer) {
- if (!addmembers.contains(printer)) {
- System.err.println("du bist kein Mitglied!");
- return;
- }
-
- System.out.println("Alle Members:");
- int i = 1;
- for (Whatsapp s : addmembers) {
- String memberName = printer.getContact().contains(s.getName()) ? s.getName() : "Unbekannt";
-
- if (admins.contains(s))
- System.out.println("Mitglied(Admin) " + i + " : " + memberName);
- else
- System.out.println("Mitglied " + i + " : " + memberName);
- i++;
- }
- }
- }
-
diff --git a/Programmierung2/src/Übungen/WhatsappTest.java b/Programmierung2/src/Übungen/WhatsappTest.java
deleted file mode 100644
index 7a644df..0000000
--- a/Programmierung2/src/Übungen/WhatsappTest.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package Übungen;
-import java.util.ArrayList;
-
-public class WhatsappTest {
-
- public static void main(String[] args) {
- Whatsapp obai = new Whatsapp("obai", "049321384324");
- Whatsapp omar = new Whatsapp("omar", "049321384324");
- Whatsapp abd = new Whatsapp("abd", "049321321");
- Whatsapp oula = new Whatsapp("oula", "049321321");
-
-
- Nachrichten messages = new Nachrichten(obai,omar);
- messages.sendMessage(obai, omar, "Hallo omar");
- messages.sendMessage(omar, obai, "Hallo obai");
- messages.sendMessage(omar, obai, "was machst du?");
- messages.printsaveMessages();
- omar.blocKontakt(obai);
- messages.sendMessage(omar, obai, "was machst du?");
- messages.printsaveMessages();
-
-// Groups gr1 = new Groups(obai,"Almidani");
-// gr1.addMembers(omar);
-// gr1.addMembers(abd);
-//
-// obai.addContact("abd","004848214");
-// obai.addContact("omar","004848214");
-// gr1.addAdmin(obai, omar);
-// gr1.printaddmembers(obai);
-// System.out.println();
-// System.out.println();
-// System.out.println();
-// gr1.printaddmembers(omar);
-// gr1.sendeMessages(abd, "Hallo Omar");
-// gr1.sendeMessages(omar, "Hallo Abd");
-//
-//
-// gr1.printallMessages();
- }
-
-}