自己写的个java聊天 import java.io.*; import java.net.*; import java.util.ArrayList; import java.util.List; public class ChatServer { public static int id; private ServerSocket server; private List connections; InetAddress localAddress; public static void main(String[] args){ new ChatServer().startServer(); } private void startServer(){ boolean started = false; try { connections = new ArrayList(); server = new ServerSocket(8888); localAddress = InetAddress.getLocalHost(); started = true; System.out.println("服务器已启动..正在监听.../服务器ip: " + localAddress); } catch (IOException e) { System.out.println("服务器启动失败!请关闭服务器,重新启动"); System.exit(0); } while(started){ try { Socket connection = server.accept(); System.out.println("来自" + connection.getInetAddress() + "已建立:" ); Connection c = new Connection(connection); connections.add(c); new Thread(c).start(); } catch (IOException e) { System.out.println("客户端连接出错"); } } } class Connection implements Runnable{ private Socket connection; private ObjectInputStream inputS; private ObjectOutputStream outputS; private boolean beConnected = false; private int id; public Connection(Socket connection){ this.connection = connection; this.id = ChatServer.id++; try { inputS = new ObjectInputStream(connection.getInputStream()); outputS = new ObjectOutputStream(connection.getOutputStream()); beConnected = true; } catch (IOException e) { System.out.println("无法获取连接的输入输出流"); } } public void run(){ try { outputS.writeObject("已连接到服务器:"+connection.getInetAddress()); outputS.writeObject("服务器:您的客户id为 :" + id + "\t" + " 输入BYE退出聊天"); while(true){ String inLine = (String) inputS.readObject(); //System.out.println(inLine); ObjectOutputStream output; if(inLine.charAt(0)==':'&&inLine.length()>0)