以下是我写的简单服务器socket,程序可以运行,但有一个问题就是只有当前的客户socket可以收到自己发出的信息,其它客户socket不能收到不知道是什么原因,请指点。另外想确认一个问题ServerSocket是不是广播式的,也就是说ServerSocket收到Socket的信息,然后是不是以广播方式向所有的Socket发送信息(我想是这样,我也就是利用这个原理写的这个小程序)package chat;
import java.net.*;
import java.io.*;class ChatServer {
  private ServerSocket server=null;
  private Socket socket=null;
  private int active_connects=0;  public ChatServer(int port) {
    try {
      server = new ServerSocket(port);
      accept();
    }
    catch(Exception e){
      System.out.println("Exception " + e);
    }
  }  public void accept (){
    while(true) {
      try {
        socket = server.accept();
        if (socket != null) {
          System.out.println(socket + "Connection");
        }
      }
      catch(Exception e){
        System.out.println("accept errors " + e);
      }      ListenClient aListenClient = new ListenClient(socket);
      Thread newThrd = new Thread(aListenClient);
      active_connects ++;
      System.out.println("Current Connections " + active_connects);
      newThrd.start();
    }
  }}////////////////////////////////////////////////////////////
 class ListenClient implements Runnable  {
  private Socket socket = null;
  private BufferedReader br = null;
  private PrintWriter pw = null;  ListenClient(Socket s) {
    socket = s;
    try {
      br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
      pw = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()));
    }
    catch(Exception e){
      System.out.println("Client Init Errors " + e);
    }  }
  public void run() {
    String line = null;
    while(true){
      try{
        line = br.readLine();
        if (line != null) {
          System.out.println(line);
          pw.println(line);
          pw.flush();
        }
      }
      catch(Exception e){
        System.out.println("Exception run " + e);
      }
    }
  }
 }  ////////////////////////////////////////////////////////////
  class testServer {
      public static void main(String[] args) {
        int port = 9876;
        ChatServer cs = new ChatServer(port);      }
    }