I基于JAVA的五子棋游戏系统设计与实现专业电子信息工程学生董永杰指导教师曾玉摘要目前,随着计算机网络的的发展,以计算机技术和网络技术为核心的现代网络技术已经在现实生活和生产中得到了广泛的使用,已经成为多数人群的休闲方式,也为多数人所喜好。当然,为了满足没有网络同样能娱乐的要求,许多小游戏做成了单机和网络的双功能。本软件使用JAVA语户端之间的连接,利用多线程技术言实现,通过对图形界面,绘图,布局管理器等去构造出游戏的单机功能,在此基础上,利用SCOKET的知识,建立起服务器与客来处理服务器端与客户端之间的数据传输,通信问题,使得客户端和服务器端之间能够同步的进行处理。通过对软件的编写,更深入的理解了面向对象的概念,也体会到利用面向对象语言处理一些问题的优势。同时也加深了对多线程,流套接字等高级技术的理解。关键词:多线程;流套接字;数据传输;同步。ABSTRACTIIIABSTRACTAtpresent,Withtherapiddevelopmentofcomputernetwork.Takingcomputertechnologyandthenetworktechnologyasthecore,modernnetworktechnologyisalreadyusedinthereallifeandtheproductionandalreadybecametheleisuremodeofthemostpeople.Andmostpeoplelikethem.Ofcourse,it’sapitythattherestillhavesomeclientslackingofnetworkbecauseofvariouscauses.Inordertosatisfytheaboveclients’requirements.Alargenumberofgames,usuallynamedas“smallgames”byplayers,aredesignedforinvolvingtwokindsofdifferentfunction.Theformergameisoftenplayedbytheseplayerswhosecomputersneverconnectwiththenetwork.It’scalledforstand-aloneversiongames.Justasitsnameimplies,thelaterisnamedasonlineversiongamesThissoftwareimplementedwithJAVAlanguage,andaccordingtotheunderstandingofSCOKET,GUIandpaintimageichnology.Establishedinthesefoundation,theservercoectswiththemulti-client,andtransmissiontheinformationbetweenmanyclientsusingthemulti-threadproceedingtechnology.itisveryconvenientforbothclientandservertodothesynchronousprocessing.Throughtothesoftwarecompilation,deepenunderstandingandgrasptothetechnologyaboveunderstandingandholding.KeyWords:multiplethread,Socket,transmission-data,synchronism.目录目录第一章绪论..............................................11.1开发背景......................................................11.2课题意义......................................................11.3五子棋游戏的发展与现状........................................21.4论文的组织结构................................................3第二章五子棋程序相关技术介绍............................42.1软件的基本功能................................................42.2开发运行环境..................................................42.3软件的开发手段以及工具的介绍..................................42.3.1Java简介..................................................42.3.2MyEclipse10开发环境简介...................................62.4软件的实现目的................................................7第三章五子棋程序分析与设计..............................83.1用户需求分析..................................................83.2软件功能结构图................................................83.3软件各个功能的简要说明........................................93.4软件设计中使用到的JAVA软件包以及类和方法....................113.5五子棋界面设计...............................................123.6五子棋算法设计...............................................133.6.1五子棋棋盘设计............................................143.6.2棋子设计..................................................153.6.3落子算法设计..............................................163.6.4判断输赢设计..............................................183.7网络五子棋算法设计...........................................20第四章软件的具体实现...................................224.1准备工作.....................................................224.2游戏窗口界面的实现...........................................224.3下棋算法的实现...............................................244.4完成判断胜负的功能...........................................264.5系统测试.....................................................294.6测试计划.....................................................304.6.1界面功能测试..............................................304.6.2单机游戏测试..............................................314.6.3联网游戏测试..............................................324.7测试结果.....................................................33第五章总结与展望.......................................34目录V致谢....................................................35附录....................................................36JIcon.java程序:.................................................36Qipan.java部分程序:.............................................36参考文献................................................42第一章绪论1第一章绪论1.1开发背景随着计算机的快速发展,各种游戏被纷纷请进了电脑。而像五子棋这类不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性的棋类游戏更是备受推崇。这使得那些喜爱下棋,又常常苦于没有对手的棋迷们能随时过足棋瘾。而且这类软件个个水平颇高,大有与人脑分庭抗礼之势。其中战胜过国际象棋世界冠军-卡斯帕罗夫的“深蓝”便是最具说服力的代表,其它像围棋的“手淡”、象棋的“将族”等也以其优秀的人工智能深受棋迷喜爱。五子棋是我国古代的、传统的黑白棋种之一,大约在南北朝时期随围棋一起先后传入朝鲜、日本等地。现代五子棋日文称之为“连珠”,英译为“Ren-ju”,英文称之为“Gobang”或“FIR”(FiveinaRow的缩写),亦有“连五子”、“五子连”、“串珠”、“五目”、“五目碰”、“五格”等多种称谓。通过一系列的规则变化使连珠五子棋这一简单的游戏复杂化、规范化,而最终成为今天的职业连珠五子棋,同时也成为一种国际比赛棋。五子棋既有现代休闲的明显特征“短、平、快”,又有古典哲学的高深学问“阴阳易理”;它既有简单易学的特性,为人民群众所喜闻乐见,又有深奥的技巧和高水平的国际性比赛;它的棋文化源渊流长,具有东方的神秘和西方的直观;既有“场”的概念,亦有“点”的连接。它是中西文化的交流点,是古今哲理的结晶。五子棋起源于古代中国,发展于日本,风靡于欧洲。它在不同的国度也有着不同的称谓,如韩国人称其为“情侣棋”;欧洲人称其为“绅士棋”;日本人称其为“中老年棋”;美国人则喜欢将其称为“商业棋”。由此可见,尽管国度不同,语言各异,但人们都可以借助这一简单又深奥的棋艺进行交流、比赛,增进友谊。1.2课题意义人类之所以不断在进步,是因为我们人类一直不断的在思考,五子棋游戏程序的开发符合人类进步也是促进人类进步的一大动力之一。五子棋游戏程序让人云南民族大学学士学位论文2们方便快捷的可以下五子棋,让人们在何时都能通过下棋来提高逻辑思维能力,同时也培养儿童的兴趣以及爱好,让孩子更加聪明。同时,五子棋游戏程序的开发也使得五子棋这个游戏得到了广泛的推广,让世界各地的人们知道五子棋,玩上五子棋,这已经不是局限。五子棋游戏程序使得越来越多的人喜欢上了五子棋,热爱下五子棋,它是具有很好的带动性的。随着互联网络的不断普及,越来越多的人可以在网络上就能够与他人下五子棋了。1.3五子棋游戏的发展与现状目前,连珠这一棋类运动已迅速在国际上发展起来。外国人都十分看好这一不起眼的智力游戏,并认为五子棋不仅能提高思维、开发智力、手脑并用、修身养性而且富含哲理,具有东方的神秘和西方的直观,是中西文化的交汇点。