Merge branch 'master' of https://gitty.informatik.hs-mannheim.de/3009594/Programmierung2.git
commit
c42b14f39a
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -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();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
package GUIAnwendungen.Meine_GUI_Chat;
|
||||||
|
|
||||||
|
public class ChatFenster {
|
||||||
|
|
||||||
|
private User user;
|
||||||
|
private Chat_Fenster chat;
|
||||||
|
|
||||||
|
ChatFenster(User user) {
|
||||||
|
this.user = user;
|
||||||
|
chat = new Chat_Fenster();
|
||||||
|
zeigeName();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void zeigeName() {
|
||||||
|
chat.zeigeName(user.getName());
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getUser() {
|
||||||
|
return user;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Chat_Fenster getChat() {
|
||||||
|
return chat;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void empfangeNachricht(String nachricht) {
|
||||||
|
chat.sendText(nachricht);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void sendeNachricht(String nachricht) {
|
||||||
|
chat.sendText(user.getName() + ": " + nachricht);
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,27 @@
|
||||||
|
package GUIAnwendungen.Meine_GUI_Chat;
|
||||||
|
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
|
||||||
|
public class ChatManager implements ActionListener {
|
||||||
|
|
||||||
|
private ChatFenster sender;
|
||||||
|
private ChatFenster receiver;
|
||||||
|
|
||||||
|
ChatManager(ChatFenster sender, ChatFenster receiver) {
|
||||||
|
this.sender = sender;
|
||||||
|
this.receiver = receiver;
|
||||||
|
sender.getChat().getSendeNachricht().addActionListener(this);
|
||||||
|
receiver.getChat().getSendeNachricht().addActionListener(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
String nachricht = sender.getChat().getEingabeNachricht().getText();
|
||||||
|
if (!nachricht.isEmpty()) {
|
||||||
|
sender.sendeNachricht(nachricht);
|
||||||
|
receiver.empfangeNachricht(sender.getUser().getName() + ": " + nachricht);
|
||||||
|
sender.getChat().getEingabeNachricht().setText("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,87 @@
|
||||||
|
package GUIAnwendungen.Meine_GUI_Chat;
|
||||||
|
|
||||||
|
import java.awt.EventQueue;
|
||||||
|
import java.util.Scanner;
|
||||||
|
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.border.EmptyBorder;
|
||||||
|
import java.awt.Color;
|
||||||
|
import javax.swing.JList;
|
||||||
|
import javax.swing.JTable;
|
||||||
|
import javax.swing.JTextArea;
|
||||||
|
import javax.swing.JTextField;
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import java.awt.Font;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
|
||||||
|
public class Chat_Fenster extends JFrame {
|
||||||
|
|
||||||
|
JPanel contentPane;
|
||||||
|
JTextField eingabeNachricht;
|
||||||
|
JTextArea nachrichtAnzeigen;
|
||||||
|
JButton sendeNachricht;
|
||||||
|
private JPanel panel;
|
||||||
|
JLabel userName;
|
||||||
|
|
||||||
|
public Chat_Fenster() {
|
||||||
|
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
setBounds(100, 100, 460, 665);
|
||||||
|
contentPane = new JPanel();
|
||||||
|
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
|
||||||
|
|
||||||
|
setContentPane(contentPane);
|
||||||
|
contentPane.setLayout(null);
|
||||||
|
|
||||||
|
nachrichtAnzeigen = new JTextArea();
|
||||||
|
nachrichtAnzeigen.setLineWrap(true);
|
||||||
|
nachrichtAnzeigen.setFont(new Font("Tahoma", Font.BOLD, 13));
|
||||||
|
nachrichtAnzeigen.setForeground(new Color(0, 128, 255));
|
||||||
|
nachrichtAnzeigen.setEnabled(false);
|
||||||
|
nachrichtAnzeigen.setBounds(10, 11, 311, 516);
|
||||||
|
contentPane.add(nachrichtAnzeigen);
|
||||||
|
|
||||||
|
eingabeNachricht = new JTextField();
|
||||||
|
eingabeNachricht.setBounds(10, 538, 227, 31);
|
||||||
|
contentPane.add(eingabeNachricht);
|
||||||
|
eingabeNachricht.setColumns(10);
|
||||||
|
|
||||||
|
sendeNachricht = new JButton("sendeNachricht");
|
||||||
|
sendeNachricht.setBounds(247, 542, 135, 27);
|
||||||
|
contentPane.add(sendeNachricht);
|
||||||
|
|
||||||
|
panel = new JPanel();
|
||||||
|
panel.setBackground(new Color(0, 128, 255));
|
||||||
|
panel.setBounds(331, 11, 103, 168);
|
||||||
|
contentPane.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
userName = new JLabel("New label");
|
||||||
|
userName.setBounds(10, 11, 83, 36);
|
||||||
|
panel.add(userName);
|
||||||
|
|
||||||
|
this.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void sendText(String nachricht) {
|
||||||
|
nachrichtAnzeigen.append(nachricht);
|
||||||
|
nachrichtAnzeigen.append("\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void zeigeName(String name) {
|
||||||
|
userName.setText(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public JTextField getEingabeNachricht() {
|
||||||
|
return eingabeNachricht;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JButton getSendeNachricht() {
|
||||||
|
return sendeNachricht;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -1,63 +0,0 @@
|
||||||
package GUIAnwendungen.Meine_GUI_Chat;
|
|
||||||
|
|
||||||
import java.awt.event.ActionEvent;
|
|
||||||
import java.awt.event.ActionListener;
|
|
||||||
|
|
||||||
public class Controller {
|
|
||||||
|
|
||||||
private Modell user1;
|
|
||||||
private View view;
|
|
||||||
private View_Hauptfenster h1 = new View_Hauptfenster();
|
|
||||||
private String name;
|
|
||||||
private String password;
|
|
||||||
|
|
||||||
Controller(Modell user, View view){
|
|
||||||
this.user1 = user;
|
|
||||||
this.view = view;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean logIn() {
|
|
||||||
view.getLogIn().addActionListener(new ActionListener(){
|
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
name = view.getNameEingabe();
|
|
||||||
password = view.getPasswordEingabe();
|
|
||||||
user1 = new Modell(name,password);
|
|
||||||
view.zeigeUserInfos();
|
|
||||||
view.schließeLoginFenster();
|
|
||||||
zeigeHauptfenster();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public void zeigeHauptfenster() {
|
|
||||||
h1.zeigeBegrüße(user1.getName());
|
|
||||||
|
|
||||||
h1.setVisible(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public String getName() {
|
|
||||||
return name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setName(String name) {
|
|
||||||
this.name = name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getPassword() {
|
|
||||||
return password;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPassword(String password) {
|
|
||||||
this.password = password;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Modell getUser1() {
|
|
||||||
return user1;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
|
@ -0,0 +1,20 @@
|
||||||
|
package GUIAnwendungen.Meine_GUI_Chat;
|
||||||
|
|
||||||
|
import java.util.Scanner;
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
User obai = new User("obai Albek");
|
||||||
|
ChatFenster obai_caht = new ChatFenster(obai);
|
||||||
|
|
||||||
|
User omar = new User("Omar Albek");
|
||||||
|
ChatFenster omar_chat = new ChatFenster(omar);
|
||||||
|
|
||||||
|
ChatManager test = new ChatManager(obai_caht, omar_chat);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -1,54 +0,0 @@
|
||||||
package GUIAnwendungen.Meine_GUI_Chat;
|
|
||||||
|
|
||||||
public class Modell {
|
|
||||||
|
|
||||||
private String name;
|
|
||||||
private int kontostand;
|
|
||||||
private int id;
|
|
||||||
private String password;
|
|
||||||
private static int ID = 100;
|
|
||||||
|
|
||||||
public Modell() {}
|
|
||||||
public Modell(String name, String password) {
|
|
||||||
this.name = name;
|
|
||||||
this.kontostand = 0;
|
|
||||||
this.password = password;
|
|
||||||
this.id = ++ID;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getName() {
|
|
||||||
return name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setName(String name) {
|
|
||||||
this.name = name;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public int getKontostand() {
|
|
||||||
return kontostand;
|
|
||||||
}
|
|
||||||
public void setKontostand(int kontostand) {
|
|
||||||
this.kontostand = kontostand;
|
|
||||||
}
|
|
||||||
//set ID ist nicht erlaubt
|
|
||||||
public int getId() {
|
|
||||||
return id;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getPassword() {
|
|
||||||
return password;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPassword(String password) {
|
|
||||||
this.password = password;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String toString() {
|
|
||||||
return "[name=" + name + ", Kontostand=" + kontostand + ", id=" + id + ", password=" + password + "]";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
|
@ -1,13 +0,0 @@
|
||||||
package GUIAnwendungen.Meine_GUI_Chat;
|
|
||||||
|
|
||||||
public class Test {
|
|
||||||
|
|
||||||
public static void main(String[] args) {
|
|
||||||
View user1View = new View();
|
|
||||||
Modell user1 = new Modell();
|
|
||||||
|
|
||||||
Controller controller = new Controller(user1,user1View);
|
|
||||||
controller.logIn();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -0,0 +1,42 @@
|
||||||
|
package GUIAnwendungen.Meine_GUI_Chat;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
public class User {
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
private int id;
|
||||||
|
private String nachricht;
|
||||||
|
private static int ID = 100;
|
||||||
|
private ArrayList<String> nachrichten;
|
||||||
|
|
||||||
|
public User(String name) {
|
||||||
|
super();
|
||||||
|
this.name = name;
|
||||||
|
this.id = ID++;
|
||||||
|
nachrichten = new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getNachricht() {
|
||||||
|
return nachricht;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNachricht(String nachricht) {
|
||||||
|
this.nachricht = nachricht;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -1,70 +0,0 @@
|
||||||
package GUIAnwendungen.Meine_GUI_Chat;
|
|
||||||
|
|
||||||
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.JOptionPane;
|
|
||||||
import javax.swing.JPasswordField;
|
|
||||||
import javax.swing.JTextField;
|
|
||||||
|
|
||||||
public class View extends JFrame {
|
|
||||||
|
|
||||||
private JLabel title = new JLabel("Log in: ");
|
|
||||||
|
|
||||||
private JLabel userName = new JLabel("Name: ");
|
|
||||||
private JTextField nameEingabe = new JTextField();
|
|
||||||
private JLabel password = new JLabel("Password: ");
|
|
||||||
private JPasswordField passwordEingabe = new JPasswordField();
|
|
||||||
private JButton logIn = new JButton("Log in");
|
|
||||||
//(int x, int y, int width, int height)
|
|
||||||
|
|
||||||
public View() {
|
|
||||||
this.setTitle("Log in");
|
|
||||||
this.setVisible(true);
|
|
||||||
this.setSize(900, 650);
|
|
||||||
this.setLayout(null);
|
|
||||||
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
|
||||||
|
|
||||||
|
|
||||||
title.setBounds(10,20,120,20);
|
|
||||||
userName.setBounds(10,50,100,20);
|
|
||||||
nameEingabe.setBounds(140,50,140,20);
|
|
||||||
|
|
||||||
password.setBounds(10,80,100,20);
|
|
||||||
passwordEingabe.setBounds(140,80,140,20);
|
|
||||||
logIn.setBounds(10,110,100,20);
|
|
||||||
|
|
||||||
|
|
||||||
this.add(title);
|
|
||||||
this.add(userName);
|
|
||||||
this.add(nameEingabe);
|
|
||||||
this.add(password);
|
|
||||||
this.add(passwordEingabe);
|
|
||||||
this.add(logIn);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public void zeigeUserInfos() {
|
|
||||||
JOptionPane.showMessageDialog(null, "Deine Log in war erfolgreich", "Log in Erfolgreich", JOptionPane.INFORMATION_MESSAGE);
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getNameEingabe() {
|
|
||||||
return nameEingabe.getText();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public String getPasswordEingabe() {
|
|
||||||
return new String(passwordEingabe.getPassword());
|
|
||||||
}
|
|
||||||
|
|
||||||
public JButton getLogIn() {
|
|
||||||
return logIn;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void schließeLoginFenster() {
|
|
||||||
this.dispose(); // Schließt das aktuelle Fenster
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,36 +0,0 @@
|
||||||
package GUIAnwendungen.Meine_GUI_Chat;
|
|
||||||
|
|
||||||
import java.awt.Color;
|
|
||||||
|
|
||||||
import javax.swing.JFrame;
|
|
||||||
import javax.swing.JLabel;
|
|
||||||
import javax.swing.JPanel;
|
|
||||||
|
|
||||||
public class View_Hauptfenster extends JFrame{
|
|
||||||
private JPanel panel = new JPanel();
|
|
||||||
private JLabel begrüsse = new JLabel();
|
|
||||||
|
|
||||||
public View_Hauptfenster() {
|
|
||||||
panel.setBackground(Color.gray);
|
|
||||||
panel.setBounds(10, 10, 300, 300);
|
|
||||||
begrüsse.setBounds(10,10,100,30);
|
|
||||||
panel.add(begrüsse);
|
|
||||||
|
|
||||||
this.setTitle("Das Hauptfenster");
|
|
||||||
this.setVisible(false);
|
|
||||||
this.setLayout(null);
|
|
||||||
this.setSize(700, 700);
|
|
||||||
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
|
||||||
this.add(panel);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public void zeigeBegrüße(String name) {
|
|
||||||
begrüsse.setText("Willkommen " + name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void main(String[]args) {
|
|
||||||
View_Hauptfenster test = new View_Hauptfenster();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
Binary file not shown.
|
@ -16,9 +16,7 @@ class Test {
|
||||||
|
|
||||||
@org.junit.jupiter.api.Test
|
@org.junit.jupiter.api.Test
|
||||||
void testaddLast() {
|
void testaddLast() {
|
||||||
Node temp = list.addLast(12);
|
|
||||||
temp = list.addLast(112);
|
|
||||||
assertEquals(112,11);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,12 +1,21 @@
|
||||||
package LinkedList.Generic;
|
package LinkedList.Generic;
|
||||||
|
|
||||||
public class ElementenList {
|
public class ElementenList<T> {
|
||||||
Node<?> head;
|
Node<T> head;
|
||||||
|
|
||||||
public <T> void addInt(T value) {
|
public void addInt(T value) {
|
||||||
|
|
||||||
Node<T> newNode = new Node<>();
|
Node<T> newNode = new Node<>();
|
||||||
newNode.value = value;
|
newNode.value = value;
|
||||||
|
|
||||||
|
head = newNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
ElementenList<String> test = new ElementenList<>();
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -18,8 +18,7 @@ public class My_ArrayList <V> implements MyList<V> {
|
||||||
if (index >= arr.length)
|
if (index >= arr.length)
|
||||||
erstell_neue_array();
|
erstell_neue_array();
|
||||||
|
|
||||||
arr[index] = e;
|
arr[index++] = e;
|
||||||
index++;
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
public void erstell_neue_array() {
|
public void erstell_neue_array() {
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,25 @@
|
||||||
|
package VorlesungsFolien.Grundlagen_OOP;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
public class Gebäude {
|
||||||
|
private ArrayList<Hörsaal> räume = new ArrayList<>();
|
||||||
|
|
||||||
|
public int berechneGesamtzahlPlätze() {
|
||||||
|
int plätze = 0;
|
||||||
|
|
||||||
|
for (Hörsaal h : this.räume) {
|
||||||
|
plätze += h.getPlätze();
|
||||||
|
}
|
||||||
|
|
||||||
|
return plätze;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addHörsaal(Hörsaal hs) {
|
||||||
|
this.räume.add(hs);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArrayList<Hörsaal> getRäume() {
|
||||||
|
return räume;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,19 @@
|
||||||
|
package VorlesungsFolien.Grundlagen_OOP;
|
||||||
|
|
||||||
|
public class Hörsaal {
|
||||||
|
private String name;
|
||||||
|
private int plätze;
|
||||||
|
|
||||||
|
public Hörsaal(String name, int plätze) {
|
||||||
|
this.name = name;
|
||||||
|
this.plätze = plätze;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getPlätze() {
|
||||||
|
return plätze;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,20 @@
|
||||||
|
package VorlesungsFolien.Grundlagen_OOP;
|
||||||
|
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
Gebäude a = new Gebäude();
|
||||||
|
a.addHörsaal(new Hörsaal("A210", 50));
|
||||||
|
a.addHörsaal(new Hörsaal("A212", 40));
|
||||||
|
|
||||||
|
System.out.println(a.berechneGesamtzahlPlätze());
|
||||||
|
|
||||||
|
// nachträgliche Ergänzung
|
||||||
|
// hier holen wir die Referenz auf den 1. Hörsaal auf den Stack
|
||||||
|
Hörsaal hs = a.getRäume().get(0);
|
||||||
|
System.out.println(hs.getPlätze());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,45 @@
|
||||||
|
package oop.Konstante_Objekte;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* In diesem Beispiel ist die Referenz person konstant, da sie mit final deklariert wurde.
|
||||||
|
* Du kannst jedoch den Zustand des Objekts, also den Namen, über die Methode setName() ändern.
|
||||||
|
* Falls du wirklich möchtest, dass sowohl die Referenz als auch der Zustand des Objekts konstant sind,
|
||||||
|
* musst du sicherstellen, dass alle Felder in der Klasse auch als final deklariert sind und keine mutierbaren Methoden vorhanden sind.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class Person {
|
||||||
|
|
||||||
|
String name;
|
||||||
|
|
||||||
|
Person(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void printname() {
|
||||||
|
System.out.println(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
final Person person = new Person("Alice");
|
||||||
|
|
||||||
|
// Du kannst den Namen ändern
|
||||||
|
person.setName("Bob");
|
||||||
|
System.out.println(person.getName()); // Ausgabe: Bob
|
||||||
|
|
||||||
|
person.printname();
|
||||||
|
|
||||||
|
// Du kannst die Referenz nicht ändern
|
||||||
|
// person = new Person("Charlie"); // Compiler-Fehler
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,54 @@
|
||||||
|
package oop.Upcastin_DownCasting;
|
||||||
|
|
||||||
|
public class Medium {
|
||||||
|
private String title;
|
||||||
|
private String autor;
|
||||||
|
|
||||||
|
public Medium(String title, String autor) {
|
||||||
|
this.title = title;
|
||||||
|
this.autor = autor;
|
||||||
|
System.out.println("Das ist Medium");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void vater() {
|
||||||
|
System.out.println("Das ist VaterMethode");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Medium [title=" + title + ", autor=" + autor + "]";
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
Medium vater = new Buch("Java", "obai", 12);
|
||||||
|
System.out.println(vater.toString());
|
||||||
|
Buch buch;
|
||||||
|
|
||||||
|
if (vater instanceof Buch) {
|
||||||
|
buch = (Buch) vater;
|
||||||
|
buch.buch();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class Buch extends Medium {
|
||||||
|
|
||||||
|
private int seitenZahl;
|
||||||
|
|
||||||
|
public Buch(String title, String autor, int seitenZahl) {
|
||||||
|
super(title, autor);
|
||||||
|
this.seitenZahl = seitenZahl;
|
||||||
|
System.out.println("Das ist Buch");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void vater() {
|
||||||
|
System.out.println("das ist vom Kind");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void buch() {
|
||||||
|
System.out.println("Das ist buchMethode");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,38 @@
|
||||||
|
package Übungen.MyChat_App;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
public class ChatRom {
|
||||||
|
|
||||||
|
private ArrayList<String> saveMessagesBetweenUsers;
|
||||||
|
|
||||||
|
ChatRom() {
|
||||||
|
this.saveMessagesBetweenUsers = new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void sendeNachricht(User sender, User empfaenger, String message) {
|
||||||
|
String foramttedNachricht = sender.getName() + " an " + empfaenger.getName() + ": " + message;
|
||||||
|
saveMessagesBetweenUsers.add(foramttedNachricht);
|
||||||
|
empfaenger.setMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void zeigeChatHistorie() {
|
||||||
|
System.out.println("Chatverlauf:");
|
||||||
|
for (String message : saveMessagesBetweenUsers)
|
||||||
|
System.out.println(message);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
User obai = new User("Obai");
|
||||||
|
User omar = new User("Omar");
|
||||||
|
|
||||||
|
ChatRom chatRoom = new ChatRom();
|
||||||
|
|
||||||
|
chatRoom.sendeNachricht(obai, omar, "Hallo Omar, wie geht es dir?");
|
||||||
|
|
||||||
|
chatRoom.sendeNachricht(omar, obai, "Mir geht's gut, Obai. Danke!");
|
||||||
|
|
||||||
|
chatRoom.zeigeChatHistorie();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,10 @@
|
||||||
|
package Übungen.MyChat_App;
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,12 @@
|
||||||
|
package Übungen.MyChat_App;
|
||||||
|
|
||||||
|
public class Messages {
|
||||||
|
ChatRom chatrom;
|
||||||
|
|
||||||
|
Messages (ChatRom chatrom){
|
||||||
|
this.chatrom = chatrom;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,39 @@
|
||||||
|
package Übungen.MyChat_App;
|
||||||
|
|
||||||
|
public class User {
|
||||||
|
|
||||||
|
private final String name;
|
||||||
|
private String message;
|
||||||
|
|
||||||
|
private final int id;
|
||||||
|
private static int ID;
|
||||||
|
|
||||||
|
User(String name) {
|
||||||
|
this.name = name;
|
||||||
|
this.message = null;
|
||||||
|
this.id = ID++;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMessage() {
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMessage(String message) {
|
||||||
|
this.message = message;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "User [name=" + name + ", id=" + id + "]";
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
package Übungen.MyschachGame;
|
||||||
|
|
||||||
|
public class GamePlay {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
new SchachGame(2);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,82 @@
|
||||||
|
package Übungen.MyschachGame;
|
||||||
|
|
||||||
|
import java.util.Scanner;
|
||||||
|
|
||||||
|
public class SchachGame {
|
||||||
|
private Scanner eingabe = new Scanner(System.in);
|
||||||
|
private char[][] spielfield;
|
||||||
|
private Spieler[] zweiSpieler;
|
||||||
|
private char[] schachFiguren = {'T','S','L','D','k','L','S','T'};
|
||||||
|
|
||||||
|
|
||||||
|
SchachGame(int spieler){
|
||||||
|
zweiSpieler = new Spieler[2];
|
||||||
|
for (int i = 0; i < zweiSpieler.length; i++)
|
||||||
|
zweiSpieler[i] = new Spieler("Spieler: " + (i + 1));
|
||||||
|
|
||||||
|
spielfield = new char[8][8];
|
||||||
|
|
||||||
|
startgame();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void startgame() {
|
||||||
|
System.out.println("Willkommen zu meinem SchachSpiel ");
|
||||||
|
for (int i = 0; i < zweiSpieler.length; i++)
|
||||||
|
System.out.println("> " + zweiSpieler[i].getName() );
|
||||||
|
|
||||||
|
fuelleArray();
|
||||||
|
printSpielfield();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void fuelleArray() {
|
||||||
|
for (int i = 0; i < spielfield.length; i++) {
|
||||||
|
spielfield[0][i] = schachFiguren[i];
|
||||||
|
spielfield[spielfield.length - 1][i] = schachFiguren[i];
|
||||||
|
|
||||||
|
spielfield[1][i] = 'B';
|
||||||
|
spielfield[spielfield.length - 2][i] = 'B';
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 2; i <= 5; i++)
|
||||||
|
for (int j = 0; j < spielfield[i].length; j++)
|
||||||
|
spielfield[i][j] = '-';
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void printSpielfield() {
|
||||||
|
System.out.println();
|
||||||
|
System.out.println(" SpielField ");
|
||||||
|
System.out.println();
|
||||||
|
for (int i = 0; i < spielfield.length; i++) {
|
||||||
|
System.out.print(i + 1 + " ");
|
||||||
|
for (int j = 0; j < spielfield[i].length; j++) {
|
||||||
|
System.out.print("|" + spielfield[i][j]);
|
||||||
|
if (j == 7)
|
||||||
|
System.out.print("|");
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.println();
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.print(" ");
|
||||||
|
for (char a = 'a'; a <= 'h'; a++)
|
||||||
|
System.out.print(" " + a);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void moveFiguren() {
|
||||||
|
|
||||||
|
System.out.println("Gebe Position bitte ein: ");
|
||||||
|
String position = eingabe.nextLine();
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void checkPosition(String pos) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,16 @@
|
||||||
|
package Übungen.MyschachGame;
|
||||||
|
|
||||||
|
public class Spieler {
|
||||||
|
|
||||||
|
private final String name;
|
||||||
|
|
||||||
|
Spieler(String name){
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue