《移动通信软件编程基础—JAVA语言》第12章.ppt

《移动通信软件编程基础—JAVA语言》第12章.ppt

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
知识回顾 多线程 线程的基本概念 线程的实现方法 同步的实现 死锁及其解决方案 线程的基本概念 创建线程 线程的状态 暂停线程的方法 线程的优先级 继承Thread类 实现Runnable接口 同步方法 同步代码块 死锁 Wait-notify机制 12 网络编程 第 章 本章目标 网络编程的基本概念 编写UDP网络程序 编写TCP网络程序 网络通信 进行通信的计算机的地址:IP地址 进行通信的计算机的规则:TCP协议 通信应用程序所在通信端口 UDP和TCP协议 TCP(传输控制协议)是面向连接的通信协议: TCP提供两台计算机之间的可靠无差别的数据传输。 应用程序利用TCP进行通信时,源和目标之间会建立一个虚拟的连接,连接一旦建立,两台计算机之间就可以把数据当作一个双向字节流进行交换。 建立连接 通话 结束通话 UDP/TCP协议 UDP(用户数据报协议)是无连接通信协议。 UDP不保证数据的可靠传输,但能实现向多个目标发送数据,并可以实现接收多个源的数据。 使用UDP协议从一台主机向另外一台主机发送数据,数据就会立即发送,而不管另外一台主机是否准备接收,另外一台主机也不会确认是否收到。 TCP协议和UDP协议的差别 对比项 TCP协议 UDP协议 是否连接 面向连接 面向非连接 传输可靠性 可靠的 不可靠的 应用场合 传输大量的数据 少量数据 速度 慢 快 Socket套接字 Socket是网络驱动层提供给应用程序编程的接口和一种机制。 Java网络编程在很大程度上就是套接字(Socket)编程。套接字是让用户与网络通信的一种对象,它并不是物理设备,可以将其理解为网络连接的端点。 Socket套接字 Socket发送信息的工作机制: Socket在应用程序中创建,通过一种绑定机制与网络驱动程序建立关系,明确所对应的IP和Port。 应用程序将要传递的数据作为参数传入Socket对象,由Socket对象交给网络驱动程序,并向网络上发送。 应用程序 Socket 网络 驱动程序 产生Socket 将Socket信息通知给驱动程序 应用程序将要发送的数据传给Socket 从Socket取出数据并通过网卡发送出去 Java编写UDP网络程序 UDP协议是无连接的协议,它以数据报作为数据传输的载体。 数据报是一个在网络上发送的独立信息,它的到达、到达时间以及内容本身等都不能得到保证。 数据报的大小是受限制的,每个数据报的大小限定在64KB以内。 对于一些不需要很高质量、实时性要求很高的应用程序来说,适合利用UDP协议传输。 数据报在网上可以以任何可能的路径传往目的地。 DatagramSocket类 DatagramSocket类表示用来发送和接收数据报包的套接字。 每个在DatagramSocket上发送或接收的包都是单独编址和路由的。 在DatagramSocket上总是启用UDP广播发送。为了接收广播包,应该将DatagramSocket绑定到通配符地址。 DatagramSocket类所在包:java.net 构造方法 说明 DatagramSocket() 构造数据报套接字并将其绑定到本地主机上任 何可用的端口。 DatagramSocket(int?port) 创建数据报套接字并将其绑定到本地主机上的 指定端口。 DatagramSocket(int?port ,InetAddress?laddr) 创建数据报套接字,将其绑定到指定的本地地 址。 DatagramPacket类 DatagramPacket类表示数据报包。用来实现无连接包投递服务。 每条报文仅根据该包中包含的信息从一台机器路由到另外一台机器。 发送中的多个包可能选择不同的路由,也可能按不同的顺序到达。不对包投递做出保证。 DatagramPacket类所在包:java.net 构造方法 说明 DatagramPacket(byte[]?buf, int?length, InetAddress?address, int?port) 构造数据报包,用来将长度为 length 的包 发送到指定主机上的指定端口号。 DatagramPacket(byte[]?buf, int?length) 构造数据报包,用来接收长度为length的 数据包。 InetAddress类 InetAddress类可以用于标识网络上的硬件资源,它提供了一系列方法以描述、获取及使用网络资源。 InetAddress类没有构造

文档评论(0)

微微 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档