我看了你的程序
主要是没有什么条理性
你一运行就出异常,是你的服务器端
socket1 = serversocket.accept();
StringBuffer msg = new StringBuffer("CONNECT:");
ip = InetAddress.getLocalHost().toString();
msg.append(name + ":" + ip + "上线了!!!");
ps = new PrintStream(socket.getOutputStream());
ps.println(msg);
ps.flush();
你得到连接的Socket的引用是socket1 ,可是你传给ps的对象却是 socket,这个时候抛出了空指针异常
后来,我改了以后,连接后没有任何反应
这是因为你从socket里面得到输入输出流的顺序要一致
比如服务器端先得到输入流,后得到输出流
那么客户端就要先得到输出流,后得到输入流
这样才不会卡在那里