Java五子棋课程设计报告_第1页
Java五子棋课程设计报告_第2页
Java五子棋课程设计报告_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目录第一章 概述11.1 课程设计意义1.2 课程设计目的1.3 课程设计要求第二章 网络五子棋设计的需求分析和总体设计 2.1 需求分析 2.1.1 功能需求分析 2.1.2 性能需求分析2.1.3 用户界面需求 2.2 系统的主要功能 2.3 系统包含的类及类之间的关系 2.4 Java源文件及其功能 2.5 程序总体思路 2.6 系统流程图第三章 系统详细设计3.1 界面设置3.2 控制按钮3.3 规则3.4 棋盘坐标3.5 双方对弈情况第四章 服务器与客户端的设计与实现4.1 服务器和客户端通信机制 4.2多线程机制 4.3 传递信息 4.4客户端界面设计 4.5连接服务器 4.6判断

2、输赢算法第五章 课程设计总结第三章 原理分析3.1 服务器和客户端通信机制P318最下面的文字,p319最下面的文字Socket是面向客户/服务器模型设计的,网络上的两个程序通过一个双向的通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。 Socket通常用来实现客户方和服务方的连接。客户程序可以向Socket写请求,服务器将处理此请求,然后通过Socket将结果返回给用户 。在java中使用套接字相当简单,Java API为处理套接字的通信提供了一个类.Socket。使得编写网络应用程序相对容易。JAVA支持流套接字(stream socket)和数据报套接字(datagram

3、 socket)。流套接字使用TCP(传输控制协议)进行数据传输,而数据报套接字使用UDP(用户数据报协议)。在Java中Socket可以理解为客户端或者服务器端的一个特殊的对象,这个对象有两个关键的方法,一个是getInputStream方法,另一个是getOutputStream方法。getInputStream方法可以得到一个输入流,客户端的Socket对象上的getInputStream方法得到的输入流其实就是从服务器端发回的数据流。GetOutputStream方法得到一个输出流,客户端Socket对象上的getOutputStream方法返回的输出流就是将要发送到服务器端的数据流,

4、(其实是一个缓冲区,暂时存储将要发送过去的数据)。客户端启动以后,与服务器连接,服务器会启动一个线程来与客户进行文字交流。要完成这个工作,需要完成三个部分的工作:Java中有一个专门用来建立Socket服务器的类,名叫ServerSocket,可以用服务器需要使用的端口号作为参数来创建服务器对象。ServerSocket server=new ServerSocket(4331);这条语句创建了一个服务器对象,这个服务器使用4331号端口。当一个客户端程序建立一个Socket连接,所连接的端口号为4331时,服务器对象server便响应这个连接,并且server.accept()方法会创建一个

5、Socket对象。服务器端便可以利用这个Socket对象与客户进行通讯。Socket socket=server.accept();进而得到输入流和输出流,并进行封装。reader=newBufferedReader(newInputStreamReader (socket.getInputStream();writer = new PrintWriter(socket.getOutputStream(), true);随后,就可以使用reader.readLine()方法得到客户端的输入,也可以使用writer.println()方法向客户端发送数据。从而可以根据程序的需要对客户端的不同请求

6、进行回应。在所有通讯结束以后应该关闭这两个数据流,关闭的顺序是先关闭输出流,再关闭输入流,即使用 reader.close(); writer.close();相比服务器端,客户端要简单一些,客户端只需用服务器所在机器的ip以及服务器的端口作为参数创建一个Socket对象。得到这个对象后,就可以用"建立服务器"部分介绍的方法实现数据的输入和输出。3.2 多线程机制P277红括号括起来的内容创建新线程必须编写一个线程类,用Java编写多线程代码有两种方式l 直接继承Java的线程类Thread;l 实现Runnable接口无论采用哪种方式均需要在程序中编写Run()方法,线程在运行时要完成的任务在该方法实现。Thread 类封装了线程的行为。继承Thread类须

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论