第12章 Java网络编程.pptVIP

  1. 1、本文档共19页,可阅读全部内容。
  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文档。上传文档
查看更多
第12章 Java网络编程 学习导读 用Java开发网络软件非常方便且功能强大,Java用于开发网络程序的API均位于包和中。 在本章中我们将首先介绍Java网络编程中扮演重要角色的InetAddress类,再介绍套接字(Socket)的概念,同时以实例说明如何使用Network API操纵套接字。 最后简单介绍在非连接的UDP协议下如何进行网络通讯。 课程结构 InetAddress类 面对连接的流式套接字 面向非连接的数据报 12.1 InetAddress简介 InetAddress描述了32位或128位IP地址,要完成这个功能,InetAddress类主要依靠Inet4Address 和 Inet6Address两个支持类。 这三个类是继承关系,InetAddrress是父类,Inet4Address 和 Inet6Address是子类。 12.1 InetAddress简介 以通过下面的5个静态方法来创建一个InetAddress对象或InetAddress数组 : (1)getAllByName(String host)方法 (2)getByAddress(byte [ ] addr)方法 (3)getByAddress(String host, byte [ ] addr)方法 (4)getByName(String host)方法 (5)getLocalHost()方法 上面讲到的方法均提到返回一个或多个InetAddress对象的引用 12.1 InetAddress简介 InetAddress和它的子类型对象处理主机名到主机IPv4或IPv6地址的转换 例:InetAddress ia = InetAddress.getByName(); 见例12。1 12.2 面向连接的流式套接字 1 什么是套接字 Socket可以看成在两个程序进行通信连接中的一个端点,一个程序将一段信息写入Socket中,该Socket将这段信息发送给另外一个Socket中 12.2 面向连接的流式套接字 在两个网络应用程序之间发送和接收信息时需要建立一个可靠的连接,流套接字依靠TCP协议来保证信息正确到达目的地。 在C/S程序中,包括了相关联的三个类: InetAddress Socket ServerSocket 12.2 面向连接的流式套接字 2 ServerSocket类 服务器程序套接字 构造函数: ServerSocket(int port);port参数传递端口号 ,如果在这时出现错误将抛出IOException异常对象 接下来服务程序进入无限循环之中。 无限循环从调用ServerSocket的accept()方法开始,在调用开始后accept()方法将导致调用线程阻塞直到连接建立。在建立连接后accept()返回一个最近创建的Socket对象,该Socket对象绑定了客户程序的IP地址或端口号。 12.2 面向连接的流式套接字 例:该程序将创建一个ServerSocket对象来监听端口10000的连接请求,如果成功,服务程序将等待连接输入,开始一个线程处理连接,并响应来自客户程序的命令。 见例12。2 12.2 面向连接的流式套接字 3 Socket类 当客户程序需要与服务器程序通信时,客户程序在客户机创建一个socket对象 构造函数: Socket(InetAddress addr, int port); Socket(String host, int port); 可能通过调用Socket的 getInputStream()方法从服务程序获得输入流读传送来的信息 可能通过调用Socket的 getOutputStream()方法获得输出流来发送消息 12.2 面向连接的流式套接字 例:这个程序将创建一个Socket对象,Socket将访问运行在指定主机端口10000上的服务程序,如果访问成功,客户程序将给服务程序发送一系列命令并打印服务程序的响应 见例12。3 12.3 面向非连接的数据报 1 UDP简介 (User Datagram Protocal) UDP位于第四层——传输层,处于IP协议的上一层。 UDP有不提供数据报分组、组装以及不能对数据报排序的缺点。 当报文发送之后,是无法得知其是否安全完整到达的。 12.3 面向非连接的数据报 2 DatagramPacket类 DatagramPacket类用于处理报文,它将Byte数组、目标地址和目标端口等数据包装成报文或者将报文拆卸成Byte数组 构造函数: 1)DatagramPacket(byte [ ] buf, int length); 其中buf参数包含了一个对保存自寻址数据报信

文档评论(0)

word.ppt文档 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档