资源描述:
《网络版本五子棋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;importjava.awt.event.Win
2、dowAdapter;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;importjava.util.StringTokenizer;importjavax.swing.J
3、Button;importjavax.swing.JLabel;importjavax.swing.JPanel;importjavax.swing.UIManager;importorg.jvnet.substance.SubstanceLookAndFeel;importorg.jvnet.substance.skin.SubstanceOfficeBlue2007LookAndFeel;矚慫润厲钐瘗睞枥庑赖。/***显示服务器及用户信息地Panel类*/classMessageServerPanelextendsPanel{TextAreamessageBoa
4、rd=newTextArea("",22,50,TextArea.SCROLLBARS_VERTICAL_ONLY);JLabelstatusLabel=newJLabel("当前连接数:",Label.LEFT);聞創沟燴鐺險爱氇谴净。JPanelboardPanel=newJPanel();//主显示区PanelJPanelstatusPanel=newJPanel();//连接状态PanelMessageServerPanel(){setSize(350,300);setBackground(newColor(204,204,204));setLayout(n
5、ewBorderLayout());boardPanel.setLayout(newFlowLayout());boardPanel.setSize(210,210);statusPanel.setLayout(newBorderLayout());statusPanel.setSize(210,50);boardPanel.add(messageBoard);statusPanel.add(statusLabel,BorderLayout.WEST);add(boardPanel,BorderLayout.CENTER);add(statusPanel,Borde
6、rLayout.NORTH);}}/***服务器线程,主要用于服务器与客户端地通信*/classServerThreadextendsThread{SocketclientSocket;HashtableclientDataHash;//Socket与发送数据地流地映射HashtableclientNameHash;//Socket与用户名地映射HashtablechessPeerHash;//对弈地两个客户端用户名地映射MessageServerPanelserver;booleanisClientClosed=false;/***服务器端线程地构造函数,用于初始
7、化一些对象.*/ServerThread(SocketclientSocket,HashtableclientDataHash,残骛楼諍锩瀨濟溆塹籟。HashtableclientNameHash,HashtablechessPeerHash,MessageServerPanelserver){this.clientSocket=clientSocket;this.clientDataHash=clientDataHash;this.clientNameHash=clientNameHash;this.chessPeerHash=chessPeerHash;th