资源描述:
《java毕业设计五子棋开发论文》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第一章总体设计11.1本系统的主要功能11.2系统包含的类及类Z间的关系11.3Java源文件及其功能11.4相关文件及其功能错误!未定义书签。第二章详细设计22.1主类Chess22.2类Autoplay9第三章功能测试及运行效果143.1系统主界面143.2测试界面错误!未定义书签。参考文献15工作总结15第一章总体设计1.1本系统的主要功能木系统可以实现电脑可以自动下棋,扫描整个棋盘记录连在一起的黑白棋子数,实现人与电脑有次序的下棋,判断人与电脑的胜负,为电脑下棋提供帮助1.2系统包含的类及类之间的关系。木系统共包6个Ja
2、va源文件。类之间的关系如图1-1所示。图1-1类之间的关系图1.3Java源文件及其功能表1.1java源文件及其功能序号文件名主要功能备注1Chess本程序的主函数初始化棋盘2Autoplay实现电脑可以白动下棋分为8种情况3Sean扫描整个棋盘记录连在一起的黑白棋子数为判断胜负服务4Sort实现人与电脑有次序的下棋黑棋白棋有序的下5Judge判断人与电脑的胜负可以在文本框中显示胜负结果6Evaluate电脑估计为电脑下棋提供帮助第二章详细设计2.1主类Chess(1)成员变量见表2-1表2T主要成员变量(属性)成员变量描述
3、变量类型名称控制棋子颜色int■1重新开局ButtonButton请黑棋下子TextFieldtext_1请白棋下子TextFieldtext_2这是第"+i+"步TextFieldtext_3(2)方法见表2-2表2-2主要方法方法名称返回类型功能备注ChessPadOVoidpaint(Graphicsg)PublicvoidmousePressed(MouseEvente)publicvoidpaint(Graphicsg)publicvoidmousePressed(MouseEvente)publicvoidmouse
4、Released(MouseEvente)publicvoidmouseExited(MouseEvente)publicvoidmouseClicked(MouseEvente)初始化棋盘对棋子等图像进行初始化鼠标的实践监听画出图像处理按下鼠标的事件处理鼠标离开的事件处理鼠标离开棋盘时处理发生单击的事件设置棋盘颜色,设置棋子大小,颜色等单击实践控制图像的大小范围选中下棋的位置本步下棋结束鼠标离开组件不实现任何事件实现下棋以及重新开始游戏ChessPadOVoidpaint(Graphicsg)publicvoidmousePr
5、essed(MouseEvente)publicvoidpaint(Graphicsg)publicvoidmousePressed(MouseEvente)publicvoidmouseReleased(MouseEvente)publicvoidmouseExited(MouseEvente)publicvoidmouseClicked(MouseEvente)(3)源代码见文件Chess,javaimportjava.awt.*;importjava.awt.event*classChessPadextendsPaneli
6、mplementsMouseListener,ActionListener!intarray[][]=newint[19][19];Seanseanp二newSean();Seanseanc=newSean();AutoPlayautoPlay=newAutoPlayO;Evaluateevaluatep二newEvaluateO;Evaluateevaluatec=newEvaluateO;Sortsort=newSortO;inti=0;intx=-1,y=-1,棋子颜色=1;Buttonbutton=newButtonC重
7、新开局");TextFieldtext_1=newTextFieldC请黑棋下子”),text_2二newTextFieldO,text_3=newTextFieldO;ChessPad(){setSize(440,440);setLayout(null);setBackground(Color.pink);addMouseListener(this);add(button);button.setBounds(10,5,60,26);button.addActionListener(this);add(text_1):text_
8、1.setBounds(90,5,90,24);add(text_2);text_2.setBounds(290,5,90,24);add(text_3);text_3.setBounds(200,5,80,24);for(inti=0;iC9;i++)for(