




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第26章网络编程基础,本章主要讲述网络编程的基础知识,其中包括TCP和UDP的使用,并通过实例学习如何使用它们进行编程。随着互联网等各种网络的兴起,网络程序开发就成为热门应用,Java把将进行网络程序设计所需要的所有东西都对象化,使得网络编程更加轻松。,26.1网络基础知识,在讲述如何进行网络程序开发之前,先讲述一些有关网络的基础知识。为了使两台计算机之间能够通信,必须为这两台电脑建立一个网络,将这两台计算机进行连接,把其中一台用作服务器,另一台作客户机。那什么是服务器?什么又是客户机?服务器就是能够提供信息的计算机或程序。客户机是指请求信息的计算机或程序。有的时候很难区分服务器和客户机,因为很多信息都是互相请求、互相提供信息的。(具体内容请参照本书),26.2TCP与UDP,TCP(TransmissionControlProtocol)就是传输控制协议,其和IP协议一起使用。一般会将两者合在一起,称TCP/IP。TCP协议负责数据或文件的分组与重组,而IP协议负责发送和接收数据包。数据或文件在网络上传输的时候,会被分成许多块,称之为包。UDP(UserDatagramProtocol)就是数据包协议,它也跟IP协议一起使用。与TCP协议相比较有很多类似的地方。但是,它不对连接状态与数据丢失作检查,只是保证数据发出去了,例如,平时上网所使用的电子邮件或者聊天时的QQ、MSN等。它们都可以非在线发消息,而这一点与TCP不同。TCP需要对对方是否收到以及数据的完整性作检查。(具体内容请参照本书),26.3端口与套接字,什么是端口,什么是套接字?下面将围绕这两个概念进行讲述。网络程序设计中的端口(port)并非真实物理存在的,而是一个假想的连接器。计算机提供了很多种服务,例如Http、Ftp、Dns等等。那么客户机必须明确的直到自己要连接的是服务器上哪一个服务,是Http、Ftp或者是Dns。为此就引入了一个端口的概念。端口被规定为一个在065535之间的整数。Http服务一般使用80端口,Ftp使用的是21端口,那么客户必须通过80端口才能连接到服务器的Http服务,而通过21端口,才能连接到服务器的Ftp服务器上。(具体内容请参照本书),26.4TCP程序设计基础,Java中的TCP网络程序设计是指利用Socket类,编写通信程序。TCP程序设计的一个过程是:服务器的套接字等待客户机连接请求,并创建新的套接字,使其与客户机的套接字连接,而本身继续等待其他客户机的连接请求。,26.4.1如何设计TCP的程序,下面看看几个与TCP程序设计有关的类。1与IP相关的InetAddress类应用2服务器套接字应用3套接字实现,26.4.2一个简单的例子,下面演示一个Socket类和ServerSocket类的应用实例。(具体内容请参照本书),26.5UDP程序设计基础,本节介绍如何针对UDP进行网络程序设计。通过对设计UDP程序,可以将UDP与TCP程序设计进行比较。分析两种截然不同的网络通信方式的编写代码的方式有何不同。其实网络编程的关键,还是要理解UDP或者TCP程序执行的步骤,这是网络编程的基本点。,25.5.1如何设计UDP的程序,在这里总结编写UDP程序的步骤:(具体内容请参照本书),25.5.2一个简单的例子,本节演示一个UDP的设计实例,代码如下。(具体内容请参照本书),26.6如何设计网络程序,上面一节中讲述了如何设计TCP程序和UDP程序,本节主要讲述如何将网络编程,应用到实际工作的开发中去。,26.6.1单向通讯综合实例,下面举一个单向通信的实例。这个实例用来实现客户机向服务器发送字符串功能。由于只要求客户机向服务器发送消息,不用服务器向客户机发送消息,所以称为单向通信。客户机套接字和服务器套接字连接成功后,客户机会通过输出流发送数据,而服务器会使用输入流接收数据,下面是具体的实例代码。(具体内容请参照本书),26.6.2双向通讯综合实例,上节介绍了客户机向服务器发送数据的单向通信,本节将介绍服务器和客户机相互发送数据的双向通信,其程序代码在上一小节的代码基础上有所改变,读者可以比较两者的区别。(具体内容请参照本书),26.7常见疑难解答,(具体内容请参照本书),26.7.1TCP和UDP的区别,答:UDP不提供可靠的数据传输,事实上,该协议不能保证数据准确无误的到达目的地。UDP在许多方面非常有效。当某个程序的目标是尽快地传输尽可能多的信息时(其中任意给定数据的重要性相对较低),可使用UDP。ICQ短消息使用UDP协议发送消息。TCP的目的是提供可靠的数据传输,并在相互进行通信的设备或服务之间,保持一个虚拟连接。TCP在数据包接收无序、丢失或在交付期间被破坏时,负责数据恢复。它通过为其发送的每个数据包提供一个序号来完成此恢复。记住,较低的网络层会将每个数据包视为一个独立的单元,因此,数据包可以沿完全不同的路径发送,即使它们都是同一消息的组成部分。这种路由与网络层处理分段和重新组装数据包的方式
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年田螺姑娘考试题及答案
- 2025医疗卫生系统人员试题【综合题】附答案详解
- 2024安全监察人员模拟试题及完整答案详解【名师系列】
- 2025年:探讨合同法中违约金性质及其适用边界
- 2025年山东青岛胶州市“优才聚胶”计划(中小学教师)选聘60人(第二批)笔试高频难、易错点备考题库带答案详解
- 2024年注册电气工程师考试黑钻押题附参考答案详解(考试直接用)
- 2024年烟草职业技能鉴定试卷含答案详解(培优A卷)
- 2024-2025学年度事业单位工勤技能考试能力提升B卷题库(培优B卷)附答案详解
- 2024-2025学年粮油食品检验人员考前冲刺试卷附答案详解(基础题)
- 2024-2025学年度自考专业(会计)通关题库及参考答案详解(B卷)
- 老年照护芳香疗法应用规范
- 2025年高考语文真题全国一、二卷古诗词鉴赏
- 国企党务培训课件
- 法拉利课件介绍
- 2025-2030年中国汽车电源管理IC行业市场现状供需分析及投资评估规划分析研究报告
- 2025至2030中国淀粉粘合剂行业现状调查与前景竞争对手分析报告
- 产能管理课件
- 2025至2030PCR扩增仪市场前景分析及发展趋势分析与未来投资战略咨询研究报告
- 探索宇宙奥秘:天文现象教学课件
- 签订茶叶收购协议书
- 房建工程总承包EPC项目技术标(投标方案)(技术标)
评论
0/150
提交评论