学习游戏java开发(6大学习方法推荐)


Java游戏开发 学习情境7:网络对弈程序 08游戏3-2 优选文档 1 目标与任务 目标: ? 为游戏添加网络通信功能和游戏逻辑学习游戏java开发, 利用Socket进行网络通信,C/S架构服 务器端和客户端编写,B/S架构实现。 任务: ? 开发网络对弈程序 优选文档 2 目标程序 完成项目开发:程序运行时,有两个 客户端通过网络进行对奕。 优选文档 3 学习过程 步骤一:先完成简单的C/S架构 步骤二:再完成第二个例,实现一个服务器与 多个客户端通信 步骤三:再为服务器端创建线程,实现多线程 服务器 步骤四:最后加入分析两客户端通信的信息, 实现游戏规则的代码 优选文档 4 网络通信就是通过某种方法让一台计算机与其它 计算机交换数据。 通信就是给其它计算机传数据,或者接收其它计 算机发来的数据。 对网络的任何形式的访问最后都归结为从网卡接 收数据或向网卡传送数据。 网络通信解决两个问题: (1)如何识别不同的计算机。 (2)如何传送数据。 网络通信基础 优选文档 5 网络中的两台计算机靠协议进行通信 网络中用IP标识不同的通信实体 IP:116.123.214.108 http ftp mail 网络通信问题 IP:219.123.14.110 优选文档 6 在两台电脑间传送数据时,传送或接收数据的先 后顺序,数据的格式等内容的约定构成通信的协 议。

Internet网的数据传送有很多协议,如TCP/IP学习游戏java开发学习游戏java开发(开发网络对弈程序优选文档3-2文档优选过程步骤), UDP,FTP等,协议不同,具体到网络通信程序, 接收和发送数据部分的代码会有不同。 本次的例子都是采用TCP/IP协议。 网络协议 优选文档 7 网络上不同的计算机用IP来标识。 实际上一个IP对应一张网卡。 如果一台电脑上有多张网卡,那么就需要多个IP 来标识每一张网卡。 每个网卡有多个端口,供应用程序采用不同的通 信协议传输数据。 每种协议都采用不同的端口号,端口号可以设置, 如设置某网卡用8080号端口进行TCP/IP协议方 式的数据传输。 用IP识别网络中的计算机 优选文档 8 网络程序的架构 C S S S C C 一般网络上程序都是一个服务器,一个客户端,这种 程序的总体结构叫架构,如上图所示这种总体结构叫 C/S架构(即客户/服务器)架构。 C/S架构中,提出数据访问要求的程序叫客户端,被 提出数据访问要求的程序叫服务器端。 一个客户端可能是一台配置很高的电脑,一个服务器 端可能只是一台普通电脑。 客户端和服务器端可以是同一台电脑。 优选文档 9 网络很普遍,所以,几乎所有的编程语言都提供 网络编程的组件。

Java提供Socket组件供网络编程使用。 Socket是一个类。 在用Java进行网络编程时,只需使用Socket的 有关方法 ,按照一定步骤编写出接收数据,处理 数据,或处理数据,发送数据的代码即可。 网络编程工具 优选文档 10 Java Socket编程 事实上网络编程简单的理解就是两台计算机相 互通讯数据而已,对于程序员而言,去掌握一 种编程接口并使用一种编程模型相对就会显得 简单的多了,Java SDK提供一些相对简单的 API来完成这些工作。Socket就是其中之一, 对于Java而言,这些API存在于 这个 包里面,因此只要导入这个包就可以准备网络 编程了。 优选文档 11 Java提供了对TCP套接字的良好的支持,有两种套接字 类: .Socket; .ServerSocket; 当编写连接到已有服务的客户端软件的时候使用Socket 类。当编写绑定到本地端口以提供服务的服务器软件的时 候使用ServerSocket类。这是与DatagramSocket的 UDP工作方式不同的地方--在TCP中,连接服务器地和从 客户端接收数据的函数被分为两个独立的类。

Socket编程步骤 优选文档 12 Java中Socket可以理解为客户端或者服务器端的一个特殊 的对象,这个对象有两个关键的方法,一个是 getInputStream方法,另一个是getOutputStream方法。 getInputStream方法可以得到一个输入流,客户端的 Socket对象上的getInputStream方法得到的输入流其实就 是从服务器端发回的数据流。GetOutputStream方法得到 一个输出流,客户端Socket对象上的getOutputStream方 法返回的输出流就是将要发送到服务器端的数据流,(其 实是一个缓冲区,暂时存储将要发送过去的数据)。 Socket编程步骤 优选文档 13 要完成这个工作,需要完成三个部分的工作,以 下依次说明: 1、建立服务器类 2、建立客户端代码 3、建立用户界面 Socket编程步骤 优选文档 14 1、建立服务器类 创建服务器对象: ServerSocket server = new ServerSocket(9998) 建立一个Socket连接 : Socket incoming = server.accept() 输入流和输出流: BufferedReader in = new BufferedReader(new InputStreamReader(incoming.getInputStream())); PrintWriter out = new PrintWriter(incoming.getOutputStream(),true); 随后,就可以使用in.readLine()方法得到客户端的输入,也可 以使用out.println()方法向客户端发送数据。 关闭这两个数据流 out.close(); in.close(); 优选文档 15 创建一个Socket


免费领取: 只要加微信,回复“入门视频”,即刻获取 全网最系统,最容易入门的的Web前端入门全套视频,C语言入门全套入门视频,大数据全套入门视频,PhP全套入门视频,Pathon全套入门视频,Java全套入门视频!!!微信号:18370228235 ,立即领取!
版权申明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站不拥有所有权,不承担相关法律责任。如发现有侵权/违规的内容, 联系QQ892482387,本站将立刻清除。

分享到