好吧 我承认我是伸手党 但真是时间太急 自学学不来啊 女生编程着及啊啊啊啊
一、基础题
至少设计以下JAVA类:
客户端:
1. Login  登录聊天室。要求从键盘输入用户名和密码,并发送至服务器验证;若验证成功则进入聊天室客户端ChartClient,若失败则给出提示信息。三次输入错误则退出登录程序。
2. ChatClient  聊天室客户端。用户名和密码验证成功后,启动聊天室客户端, 接受来自服务器ChatServer的聊天信息; 
3. KeyInput 键盘输入线程类。用户可以从键盘输入信息,发送至聊天室ChatServer服务器; 发出bye则退出聊天室。
服务器:
4. ChatServer 聊天室服务器.监听客户端的请求,首先启动ReadLoginFile验证用户名和密码,将检查结果返回客服端。验证成功后启动一个ServerDaemon。 
5. ServerDaemon 监听线程类。每一个客服端启动一个监听线程,,监听来自客服端信息,并将该信息向所有的客服端广播;监听到客户端首次登录,则广播“欢迎XXX进入聊天室”;接收到bye则注销该监听线程。
6. ReadLoginFile, 从文件中读取username 和 password。
7. 分别画出客户端和服务器两端的程序流程图。
二、扩展题
 实现图形化界面的聊天室应用程序,越接近实际聊天室应用程序越好。

解决方案 »

  1.   

    推荐去看看Netty,这样通讯就会非常简单,而不是直接使用Socket类。
    如果要练基本功,还是直接用Socket。
    应该没有人去给你做这个功能,挺花时间的。
      

  2.   

    1-7条现在没人很闲给你做的。
    直接给你扩展题吧:
    http://blog.csdn.net/kiritor/article/details/8987625
      

  3.   

    LZ同道中人啊,我就是在子线程中键盘输入出了问题,不知道为什么调用BufferedReader的readLine()会抛Stream closed的异常,有没有大神能帮着解决啊!!!!
      

  4.   

    到网上直接下demo吧..
    再改改~
      

  5.   

    网上直接下demo吧,我们学校是用C#做的。
      

  6.   

    网上直接下demo吧,我们学校是用C#做的。
      

  7.   

    写个异常处理就好了。try-catch
      

  8.   

    先看马士兵的socket编程的内容吧,里面有一个学生的作业基本符合你的要求。。
    然后看他的聊天项目,要是有点基础,就好办。。
      

  9.   

    chat
    小例子程序,参考一下,import到IDE中,先运行MyServer类,然后运行MyClient两次得到两个聊天窗口。。
      

  10.   

    chat
    这个。。