ChatRom
parent
e437432c56
commit
4dcc60255b
|
@ -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
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -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 + "]";
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue