1. 实验设计目的:(1)掌握类的定义和使用;(2)掌握对象的定义;(3)掌握线程的使用.2. 实验设计内容:设计一个类似 qq 群聊的聊天软件3. 技术要点:客户端和服务器端的开发,数据库的链接与使用4. 实验条件:(1)主要设备: 586 或更高机型,256MB 或更高的内存,40G 或更大的硬盘.(2)主要软件:① 操作系统可为 Windows9X、WinMe、Win2000 或更高版本等;② 开发环境为 jdk 或者 jcreator。(3)参考书目:① 尹继平,张帆。java 范例大全.机械工业出版社② 施霞萍。java 程序设计教程。机械工业出版社 5. 实验方法与步骤:这个软件从 0。1 到 1.3 一共 13 个版本。0。1 到 0。4 版本为客户端界面设计,第0。5 到 1。2 版本为服务器端设计以及客户端与服务器端通信连接的设计实现。1。3 版为完善之前版本的缺陷并添加登陆界面。最终版本 1。3 版中一共三个类(如图一所示)源代码如下://客户端import java.awt。*;import java。awt.event。*;import java.io。IOException;import java。net。*;import java.io。*;public class ChatClient extends Frame {Socket s = null;DataOutputStream dos = null;DataInputStream dis = null;private boolean bConnected = false;private static final long serialVersionUID = 1L;TextField tfTxt = new TextField();TextArea taContent = new TextArea();public static void main(String[] args) {// TODO Auto—generated method stubnew Login();}public void launchFrame() {setLocation(400, 300);this。setSize(300, 300);add(tfTxt, BorderLayout.SOUTH);add(taContent, BorderLayout.NORTH);pack();this。addWindowListener(new WindowAdapter() {@Overridepublic void windowClosing(WindowEvent e) {disconnect();System.exit(0);}});tfTxt。addActionListener(new TFListener());setVisible(true);connect();new Thread(new RecvThead())。start();}public void connect() {try {s = new Socket("127.0.0.1", 8888);dos = new DataOutputStream(s。getOutputStream());dis = new DataInputStream(s。getInputStream());System。out.print("lian jie shang le ");bConnected = true;} catch (UnknownHostException e) {...