资源描述:
《网络版五子棋的Java源代码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、服务器端源代码:packageorg.shan.server;importjava.awt.BorderLayout;importjava.awt.Color;importjava.awt.FlowLayout;importjava.awt.Frame;importjava.awt.Label;importjava.awt.Panel;importjava.awt.TextArea;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;imp
2、ortjava.awt.event.WindowAdapter;importjava.awt.event.WindowEvent;importjava.io.DataInputStream;importjava.io.DataOutputStream;importjava.io.IOException;importjava.net.ServerSocket;importjava.net.Socket;importjava.util.Enumeration;importjava.util.Hashtable;importjav
3、a.util.StringTokenizer;importjavax.swing.JButton;importjavax.swing.JLabel;importjavax.swing.JPanel;importjavax.swing.UIManager;importorg.jvnet.substance.SubstanceLookAndFeel;importorg.jvnet.substance.skin.SubstanceOfficeBlue2007LookAndFeel;/***显示服务器及用户信息的Panel类*/cl
4、assMessageServerPanelextendsPanel{TextAreamessageBoard=newTextArea("",22,50,TextArea.SCROLLBARS_VERTICAL_ONLY);JLabelstatusLabel=newJLabel("当前连接数:",Label.LEFT);JPanelboardPanel=newJPanel();//主显示区PanelJPanelstatusPanel=newJPanel();//连接状态PanelMessageServerPanel(){set
5、Size(350,300);setBackground(newColor(204,204,204));setLayout(newBorderLayout());boardPanel.setLayout(newFlowLayout());boardPanel.setSize(210,210);statusPanel.setLayout(newBorderLayout());statusPanel.setSize(210,50);boardPanel.add(messageBoard);statusPanel.add(statu
6、sLabel,BorderLayout.WEST);add(boardPanel,BorderLayout.CENTER);add(statusPanel,BorderLayout.NORTH);}}/***服务器线程,主要用于服务器与客户端的通信*/classServerThreadextendsThread{SocketclientSocket;HashtableclientDataHash;//Socket与发送数据的流的映射HashtableclientNameHash;//Socket与用户名的映射Hashtabl
7、echessPeerHash;//对弈的两个客户端用户名的映射MessageServerPanelserver;booleanisClientClosed=false;/***服务器端线程的构造函数,用于初始化一些对象。*/ServerThread(SocketclientSocket,HashtableclientDataHash,HashtableclientNameHash,HashtablechessPeerHash,MessageServerPanelserver){this.clientSocket=client
8、Socket;this.clientDataHash=clientDataHash;this.clientNameHash=clientNameHash;this.chessPeerHash=chessPeerHash;this.server=server;}/***对客户端发来的消息处理