was neues
parent
e80cb60469
commit
e1934b49f2
|
@ -0,0 +1,54 @@
|
|||
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
|
||||
*/
|
||||
|
||||
}
|
||||
|
||||
}
|
Binary file not shown.
|
@ -0,0 +1,52 @@
|
|||
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
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,80 @@
|
|||
package BinaryTree;
|
||||
|
||||
public class BinaryBaumList {
|
||||
Node root;
|
||||
|
||||
public void addFirstElement(int value) {
|
||||
Node node = new Node(); //1. erstelle ein Node
|
||||
node.value = value; // 2. gib dieser Node ein Value
|
||||
if (root == null)//3. wenn meine Liste leer ist
|
||||
this.root = node;
|
||||
System.out.println("Erste Element: " + root.value);
|
||||
}
|
||||
|
||||
private void HinzufügenVonElementen(int value) {
|
||||
Node newNode = new Node();
|
||||
newNode.value = value;
|
||||
Node temp = root;
|
||||
Node merker = temp;
|
||||
while(temp != null) {
|
||||
merker = temp;
|
||||
if (value < temp.value)
|
||||
temp = temp.left;
|
||||
|
||||
else
|
||||
temp = temp.right;
|
||||
}
|
||||
if (value < merker.value) {
|
||||
merker.left =newNode;
|
||||
System.out.println("linke neue Knote " + merker.left.value);
|
||||
}else {
|
||||
merker.right =newNode;
|
||||
System.out.println("rechte neue Knote " + root.right.value);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void addElement(int value) {
|
||||
if (root == null)
|
||||
addFirstElement(value);
|
||||
else
|
||||
HinzufügenVonElementen(value);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public void addstatic(int value) {
|
||||
Node newNode = new Node();
|
||||
newNode.value = value;
|
||||
// wenn meine Liste leer ist
|
||||
if (root == null) {
|
||||
this.root = newNode;
|
||||
return;
|
||||
}
|
||||
|
||||
//wenn ja, dann soll ich nur die linke Knoten des Baumes betrachte
|
||||
Node temp = root;
|
||||
if (newNode.value < root.value) {
|
||||
root.left = newNode;
|
||||
System.out.println("linke seite " + root.left.value);
|
||||
}
|
||||
|
||||
else {
|
||||
root.right = newNode;
|
||||
System.out.println("rechte seite " + root.right.value);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// public void printRoot() {
|
||||
// Node temp = root;
|
||||
// Node left = root.left;
|
||||
// Node right = root.right;
|
||||
//
|
||||
// while(temp != null || left != null || right != null)
|
||||
// System.out.println("Value: " + this.root.value);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
package BinaryTree;
|
||||
|
||||
public class Node {
|
||||
int value;
|
||||
Node left;
|
||||
Node right;
|
||||
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
package BinaryTree;
|
||||
|
||||
public class Test {
|
||||
|
||||
public static void main(String[] args) {
|
||||
Node n1 = new Node();
|
||||
BinaryBaumList b1 = new BinaryBaumList();
|
||||
|
||||
b1.addFirstElement(10);
|
||||
b1.addElement(7);
|
||||
b1.addElement(20);
|
||||
b1.addElement(-2);
|
||||
b1.addElement(2);
|
||||
b1.addElement(1);
|
||||
|
||||
// b1.printRoot();
|
||||
}
|
||||
|
||||
}
|
Binary file not shown.
|
@ -0,0 +1,10 @@
|
|||
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
|
||||
*
|
||||
*/
|
||||
|
||||
}
|
|
@ -0,0 +1,46 @@
|
|||
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<String> arrayList = new ArrayList<>();
|
||||
|
||||
LinkedList<String> linkedList = new LinkedList<>();
|
||||
|
||||
List<String> vector = new Vector<>();
|
||||
// stack erbt von Vector
|
||||
Stack<String> 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);
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,71 @@
|
|||
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<String> 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<Integer> 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<String> 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
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,60 @@
|
|||
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<String> 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<String> 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<String> 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);
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
Binary file not shown.
|
@ -0,0 +1,68 @@
|
|||
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();
|
||||
}
|
||||
}
|
||||
|
Binary file not shown.
|
@ -0,0 +1,91 @@
|
|||
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());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,156 @@
|
|||
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());
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue