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