Add all 23 GoF design pattern implementations

This commit is contained in:
2026-07-25 10:50:29 +05:30
commit f5688a6b32
164 changed files with 4371 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
package mediator;
import java.util.ArrayList;
import java.util.List;
/**
* Concrete Mediator — the chat room that routes messages between users.
* Users talk to ChatRoom; ChatRoom talks to users. Nobody else talks to anybody.
*/
public class ChatRoom implements ChatMediator {
private final List<User> users = new ArrayList<>();
@Override
public void addUser(User user) {
users.add(user);
System.out.println(" [ChatRoom] " + user.getName() + " joined the room");
}
@Override
public void sendMessage(String message, User sender) {
for (User user : users) {
if (user != sender) { // don't echo back to sender
user.receive(message, sender.getName());
}
}
}
}