//这里是登陆窗口,用户成功登陆后,我new一个聊天窗口,把是谁登陆的帐号传过去,
MyFrame frame = new MyFrame(txtUser.getText());
fram.setVisible(false);//这是聊天窗口
public static String user="客户端"//user来保存当前是哪个用户登陆的,帐号
public MyFrame(String name) {
        try {
         user = name;
         System.out.println(user);//这里打印的是txtUser.getText()传过来的值  已经传把帐号传过来了,
            jbInit();//这是显示聊天窗口的,
            connect();//这是连接服务器方法
   this.setVisible(true);
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }public static String user = "服务器";//user用来保存是当前是哪个可户端连到服务器,然后放到集合里
public void connect(){
        boolean started = false;
        try {
            ss = new ServerSocket(1080);
            started = true;
        }catch(BindException e){
            System.out.println("端口已被使用了,请关闭相关程序再运行!");
            System.exit(0);
        }catch(IOException e){
            e.printStackTrace();
        }
        try{
           //服务器成功开启后,不断接受来自客户端的连接
            while (started) {          
                s = ss.accept();//等待客户端连接
                user = ff.user;//连接成功后 把客户端user的值,附值给服务器,然后保存到集合做为在线用户,
                System.out.println("连接成功");
                /*当客户端连接成功后,为每个连接设置一个单独的线程,将当前连接服务器的
                 客户端套接字传入线程类,已便建立输入,输出流处理收发信息*/
       System.out.println(user);//这里打印服务器当前的user,应该是附值以后的user,应该打印txtUser.Text();为什么这里打印的是"客户端",???
                Client c = new Client(s);
                arr.add(c);
                new Thread(c).start();
            }
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
问题是  为什么,客户端的user在构造方法里面已经被附值,而服务器打印的是客户端初始化的值??
还有就是,第一次我客户端user初始化值是:"客户端",登陆成功,服务器打印"客户端",第2次我把客户端user初始化的值
该成"客户端1",然后登陆,服务器打印的还是:"客户端".(服务器一直开着)
什么地方出错了吗?