清华大学跟我学Java_PPT第22章 网络编程课件.ppt

清华大学跟我学Java_PPT第22章 网络编程课件.ppt

ID:57008331

大小:122.50 KB

页数:26页

时间:2020-07-26

清华大学跟我学Java_PPT第22章  网络编程课件.ppt_第1页
清华大学跟我学Java_PPT第22章  网络编程课件.ppt_第2页
清华大学跟我学Java_PPT第22章  网络编程课件.ppt_第3页
清华大学跟我学Java_PPT第22章  网络编程课件.ppt_第4页
清华大学跟我学Java_PPT第22章  网络编程课件.ppt_第5页
资源描述:

《清华大学跟我学Java_PPT第22章 网络编程课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第22章网络编程Java语言的发展和养大利益于网络,它最成熟的应用领域也是基于网络的企业级应用。可以说,Java语言本身具有天然的网络特性。Java提供了许多服务于网络的类库,使用户可以用流畅和完善的方式实现网络编程,完成各种复杂的网络应用开发。22.1网络编程基础虽然Java中提供了丰富的网络相关类支持编写网络程序,而不直接使用网络底层协议,但是要开发网络应用程序,必须对网络的基础知识有一定的了解。Java的网络通信可以使用TCP、IP和UDP等协议。在真正进行Java网络编程之前,对这些协议进行简单的介绍。22.1.1TCP协议TCP(TransmissionContro

2、lProtocol),指的是传输控制协议,它是网络传输层的协议,主要负责数据的分组和重组。TCP协议提供了一种可靠的数据传输服务,它是面向连接的,大多数的网络应用程序都使用TCP协议来实现传输层。使用TCP协议创建一个网络应用程序非常容易,它可以保证数据传送的时间、顺序和内容的正确无误。但是使用TCP需要大量的网络开销,所以如果希望实现更高效的传输,使用TCP就不适合了。22.1.2IP协议IP(InternetProtocol),又称为网际协议,它是网络层的协议,是比TCP低级的协议。它代表每个计算机在网络中的唯一标识。IP地址是一个32位(IPv4)或128位(IPv6)

3、的无符号数字,使用4组数字表示一个固定的编号,数字之间用一个点号隔开,例如“192.168.1.52”就代表网络中一个计算机唯一的地址编号。22.1.3UDP协议UDP(UserDatagramProtocol),指的是用户数据报协议。它和TCP协议一样,都是网络传输层上的协议,但是它与TCP有着本质的区别。UDP是一个不可靠的、无连接的和面向消息的协议,它使用数据报进行传输。使用UDP协议传输时,不保证数据一定能到达目的地,也不保证到达的顺序性。但是UDP协议占用资源比较少,所以一般用在一些可靠性要求比较低的网络应用上,如网络视频会议、在线影视和聊天室等音频、视频数据传送。

4、22.1.4端口端口(Port)可以被理解成计算机与外界通信交流的窗户。网络上的一台计算机可以提供多个服务,例如Web服务、FTP服务和Telnet服务。那么,如何区分这些服务呢?单纯依靠IP地址是不行的,因为同一台计算机的IP地址是同一个。实际上,可以通过“IP地址+端口号”的形式来区分不同的服务。当一个信息到达时,根据其请求的端口号不同,就可以知道应该提供哪个服务了。22.1.5套接字套接字(Socket)可以理解为两个程序之间进行通信连接的两个终点接口。某个程序将一段信息写入套接字中,该套接字就会将这段信息发送给另外一个套接字,就象电话线的两端一样,这样另一端的程序就通

5、过另一端的套接字收到了这段信息。所以使用套接字编程有时也称为Socket编程。22.1.6java.net包在Java的API中,java.net包是被用来提供网络服务的。java.net包中含有各种专门用于开发网络应用程序的类,程序开发人员可以使用该包中的类很容易地建立基于TCP可靠连接的网络程序,以及基于UDP不可靠连接的网络程序。java.net包可以大致分为两个部分:低级API,用于处理网络地址(也就是网络标识符,如IP地址)、套接字(也就是基本双向数据通信机制)和接口(用于描述网络接口)。高级API,用于处理URI(表示统一资源标识符)、URL(表示统一资源定位符)

6、、URLConnection连接(表示到URL所指向资源的连接)等。22.2使用InetAddress类封装IP地址任何一台运行在Internet上的主机都有IP地址和当地DNS能够解析的域名。而在java.net包中相应提供了IP地址的封装类InetAddress。22.2.1InetAddress类InetAddress类用于描述和包装一个InternetIP地址,并提供了相关的常用方法,例如解析IP地址的主机名称、获取本机IP地址的封闭、测试指定IP地址是否可达等。InetAddress实现了java.io.Serializable接口,不允许继承。22.2.2实例:获

7、取本地主机和Internet公共域名的名称和IP地址【例22.1】:编写一个应用程序的示例。程序的功能包括获取本地主机域名和IP地址;获取Sun公司网站的主机域名和IP地址。22.3基于URL的网络编程在Java类库中,提供了许多高级别的网络类。在使用这些类进行网络编程时,不需要考虑底层实现的细节,这为程序开发提供了很大的便利。其中URL(统一资源定位符)类就是这样的高级网络类,它用它可以方便地进行URL网络编程,访问web资源。22.3.1URL类URL表示Internet上某一资源的地址。通过URL

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。