В этой статье разделяет конкретный код функции чата Java Socket Socket для вашей ссылки. Конкретный контент заключается в следующем
Client.java
импортировать java.io.*; Импорт java.net.*; Импорт java.util.*; Public Class Client {public int port = 8083; Сокет сокет = null; public static void main (string [] args) {new Client (); // start execution} public client () {try {socket = new Socket ("127.0.0.1", port); новый cthread (). start (); BufferedReader BR = новый BufferedReader (новый inputStreamReader (socket.getInputStream ())); Строка msg1; while ((msg1 = br.readline ())! = null) {System.out.println (msg1); }} catch (Exception e) {}} class cthread extends thread {public void run () {try {bufferedReader re = new BufferedReader (new InputStreamReader (System.in)); Printwriter pw = new PrintWriter (socket.getOutputStream (), true); Строка msg2; while (true) {msg2 = re.readline (); pw.println (msg2); }} catch (Exception e) {e.printstackTrace (); }}}}Server.java
Импорт java.net.*; импортировать java.io.*; Импорт java.util.*; Общественный класс сервер {int port; Список <Socket> клиенты; Сервер Serversocket; public server () {try {port = 8083; Клиенты = новый ArrayList <Socket> (); server = new Serversocket (порт); System.out.println ("Сервер запустил"); int co = 1; while (true) {socket socket = server.accept (); clients.add (сокет); Mythread mythread = new Mythread (Socket, co); co ++; mythread.start (); }} catch (Exception ex) {System.out.println ("vv"); }} public static void main (string [] args) {new Server (); } класс Mythread Extends Thread {Socket Ssocket; частный int count; Частный буферный читатель BR; Частный PrintWriter PW; публичный строковый MSG; Public Mythread (Socket S, int c) {ssocket = s; count = c; } public void run () {try {br = new BufferedReader (new InputStreamReader (ssocket.getInputStream ())); msg = "добро пожаловать [" + "client" + count + "] в чат! sendmsg (); while ((msg = br.readline ())! = null) {msg = "【" + "client" + count + "] скажем:" + msg; sendmsg (); }} catch (Exception ex) {}} public void sendmsg () {try {System.out.println (msg); for (int i = client.size ()-1; i> = 0; i--) {pw = new PrintWriter (clients.get (i) .getOutputStream (), true); pw.println (MSG); pw.flush (); }} catch (Exception ex) {}}}}Результаты работы:
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.