Сокет - это IP-адрес + номер порта.
(Подумайте о том, чтобы порт насчитывал столько же дверей в одну и ту же комнату, чтобы в него одновременно могло попасть много людей).
Теперь задача сервера чата состоит в том, чтобы прослушивать все запросы, поступающие через TCP на этот номер порта машины.Это бесконечный цикл вроде: while(true) { listen to port number xxxx }
.Теперь функция клиента чата состоит в том, чтобы установить соединение с сервером по этому IP-адресу на этом номере порта (например, 127.0.0.1:2020).Теперь после установления соединения вы можете отправлять данные на сервер.
(В случае сервера чата, когда сервер получает сообщение от одного клиента, он передает сообщение всем клиентам).
Пакет java.net предоставляет классы ServerSocket и Socket для выполнения этих задач.
Обычно используемые объекты в java.net: -
MalformURLException, BindException, ConnectException, UnknownHOstException, SocketTimeoutException, PortUnreachableException, URL, URI, URLStreamHandler, Inet4Address, MulticastSocket, ServerSocket, Socket, URLEncoder, URLDecoder.
GUI-часть, которую вы можете сделать самостоятельно, как вы сказали, что вы хороши в апплете (я плох в апплете).