java五子棋代码解析 java五子棋的简单思路( 十 )


// 如果关键字是QUIT则是客户端发来断开连接的信息
// 服务器断开与这个客户的连接
ChatServer.disconnect(this);
// 继续监听聊天室并刷新其他客户的聊天人名list
ChatServer.notifyRoomPeople();
running = false;
}
}
}
public void toStop(){
running = false;
}
// 覆盖Object类的equals方法
public boolean equals(Object obj){
if (obj instanceof ClientProcessor){
ClientProcessor obj1 = (ClientProcessor)obj;
if (obj1.clientIP.equals(this.clientIP)
(obj1.clientName.equals(this.clientName))){
return true;
}
}
return false;
}
// 覆盖Object类的hashCode方法
public int hashCode(){
return (this.clientIP + Constants.SEPERATOR + this.clientName).hashCode();
}
}
package Chat;
/**
* 定义聊天室程序中用到的常量
*/
public class Constants {
// 服务器的端口号
public static final int SERVER_PORT = 2525;
public static final int MAX_CLIENT = 10;
// 消息标识符与消息体之间的分隔符
public static final String SEPERATOR = ":";
// 消息信息的标识符
public static final String MSG_IDENTIFER = "MSG";
// 用户列表信息的标识符
public static final String PEOPLE_IDENTIFER = "PEOPLE";
// 连接服务器信息的标识符
public static final String CONNECT_IDENTIFER = "INFO";
// 退出信息标识符
public static final String QUIT_IDENTIFER = "QUIT";
}
java五子棋 程序解释要想充分了解你还是自己找doc帮助文档
//导入包
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
//构造applet程序
public class 五子棋 extends Applet implements ActionListener,MouseListener
{
String str="五子棋游戏!";
Dimension currentPos=new Dimension();//实例化 像素
int zuobiao[][]=new int[19][15];//声明一个19*15的棋盘
int x=20,y=20;
boolean unfirstpaint=false;
booleanone=false;
//======================================================================
public void init()//初始化(生存周期第一步)
{
addMouseListener(this);//对鼠标添加监听
for(int i=0;i=18;i++)//使整个棋盘设置为0
{
for(int j=0;j=14;j++)
zuobiao[i][j]=0;
}
}
//======================================================================
public void paint(Graphics g)//画图(生存周期第二步)
{
int x0=30,y0=50,dx=30,dy=30,N=18,M=14;//x0,y0初始坐标,dx,dy每格间距
int x1,y1,x2,y2;
g.setColor(Color.green);//
y1=y0;
y2=y0+M*dy;
for(int i=0;i=N;i++)//用绿色画棋盘中纵向的线
{
x1=x0+i*dx;
g.drawLine(x1,y1,x1,y2);
}
g.setColor(Color.red);//设置成红色
x1=x0;
x2=x0+N*dx;
for(int j=0;j=M;j++)//用红色画棋盘中横向的线
{
y1=y0+j*dy;
g.drawLine(x1,y1,x2,y1);
}
g.setColor(Color.red);//设置成红色
g.setFont(new Font("TimesRoman",Font.BOLD,25)); //设置字体
g.drawString(str,120,30);//在指定位置(120,30)写入“五子棋游戏!”
g.setColor(Color.red);//设置成红色
g.fillOval(600,60,20,20)//用红色填充椭圆;
g.drawString(": 甲方",610,80);//在椭圆中写入字
g.setColor(Color.blue);//设置成蓝色
g.fillOval(600,100,20,20);//用蓝色填充椭圆;
g.drawString(": 乙方",610,120); //在椭圆中写入字
//======================================================================
//这里代码不全 , currentPos没有赋值 , 不好推测
if(unfirstpaint)//判断是否为第一次画棋子,如果不是第一次,执行
{

推荐阅读