Java游戏编程原理与实践教程 陈锐 夏敏捷 葛丽萍 第15章 网络五子棋游戏新.pptVIP

Java游戏编程原理与实践教程 陈锐 夏敏捷 葛丽萍 第15章 网络五子棋游戏新.ppt

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

馋死**Java游戏编程原理与实践教程主编陈锐夏敏捷人民邮电出版社第15章网络五子棋游戏本章介绍Java下的Socket编程方法制作的“网络五子棋〞程序。网络五子棋采用C/S架构,分为效劳器端和客户端。效劳器端运行界面如图15-1所示,游戏时效劳器首先启动,单击“侦听〞按钮启动效劳器侦听是否有客户端连接,如果有连接那么进入聊天和下棋功能,同时“侦听〞按钮文字变成“正在聊天〞。用户根据提示信息,轮到自己下棋才可以在棋盘上落子,“悔棋〞按钮可以在对方还没落子前悔棋。在下棋过程中效劳器端用户和客户端用户之间可以聊天,效劳器端用户通过“发送〞按钮发送聊天信息。网络五子棋游戏效劳器端界面网络五子棋游戏客户端界面15.2五子棋设计思想15.2.1界面设计下棋需要有棋盘,程序中通过继承JPanel面板类GobangPanel显示如图15-3的棋盘背景图片。而棋盘线条、准星点位及双方的落子是绘制出来的。游戏界面中要求用户输入效劳器IP、端口等。棋盘背景15.2.2通讯协议为了区分通信中传送的是“输赢信息〞,“下的棋子位置信息〞,“重新开始〞等,在发送信息的首部加上代号。定义了如下协议:〔1〕move|下的棋子位置坐标〔x,y〕例如:“move|1|1〞表示对方下子位置坐标〔1,1〕。〔2〕over|那方赢的信息例如:“over|游戏结束,黑方胜〞表示黑方赢了。〔3〕quit|表示游戏结束,对方离开了.〔4〕undo|x|y悔棋命令,表示撤销刚刚自己在〔x,y〕坐标位置的落子。〔5〕chat|聊天内容文字聊天协议。15.3关键技术15.3.1Socket技术网络通信解决两个问题:〔1〕如何识别不同的计算机。〔2〕如何传送数据。基于TCP/IP网络的Java程序与其他程序通信中,它依靠Socket进行通信。Socket可以看成在两个程序进行通信连接中的一个端点,一个程序将一段信息写入Socket中,该Socket将这段信息发送给另外一个Socket中,使这段信息能传送到其他程序中。网络通信问题网络中的两台计算机靠协议进行通信网络中用IP标识不同的通信实体IP:10IP:08httpftpmail网络协议在两台电脑间传送数据时,传送或接收数据的先后顺序,数据的格式等内容的约定构成通信的协议。Internet网的数据传送有很多协议,如TCP/IP,UDP,FTP等,协议不同,具体到网络通信程序,接收和发送数据局部的代码会有不同。用IP识别网络中的计算机网络上不同的计算机用IP来标识。实际上一个IP对应一张网卡。如果一台电脑上有多张网卡,那么就需要多个IP来标识每一张网卡。每个网卡有多个端口,供给用程序采用不同的通信协议传输数据。每种协议都采用不同的端口号,端口号可以设置,如设置某网卡用8080号端口进行TCP/IP协议方式的数据传输。网络程序的架构一般网络上程序都是一个效劳器,一个客户端,这种程序的总体结构叫架构,如上图所示这种总体结构叫C/S架构〔即客户/效劳器〕架构。C/S架构中,提出数据访问要求的程序叫客户端,被提出数据访问要求的程序叫效劳器端。一个客户端可能是一台配置很高的电脑,一个效劳器端可能只是一台普通电脑。客户端和效劳器端可以是同一台电脑。CSCSCS网络编程工具网络很普遍,所以,几乎所有的编程语言都提供网络编程的组件。Java提供Socket组件供网络编程使用。Socket是一个类。在用Java进行网络编程时,只需使用Socket的有关方法,按照一定步骤编写出接收数据,处理数据,或处理数据,发送数据的代码即可。JavaSocket编程事实上网络编程简单的理解就是两台计算机相互通讯数据而已,对于程序员而言,去掌握一种编程接口并使用一种编程模型相对就会显得简单的多了,JavaSDK提供一些相对简单的API来完成这些工作。Socket就是其中之一,对于Java而言,这些API存在于这个包里面,因此只要导入这个包就可以准备网络编程了。Socket编程步骤Java提供了对TCP套接字的良好的支持,有两种套接字类:;;当编写连接到已有效劳的客户端软件的时候使用Socket类。当编写绑定到本地端口以提供效劳的效劳器软件的时候使用ServerSocket类。这是与DatagramSocket的UDP工作方式不同的地方--在TCP中,连接效劳器地和从客户端接收数据的函数被分为两个独立的类。Socket编程步骤Java中Socket可以理解为客户端或者效劳器端的一个特殊的对象,这个对象有两个关

文档评论(0)

ranfand + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档