目录
一、UDP通信的概述
解析:
1.在上一篇文章中已经讲述过UDP通信的特点,在这里就不多说了,本文主要写的是UDP通信的实现。
2.UDP是一个面向无连接,不可靠的传输层协议,它在java中的实现主要依靠两个类:DatagramSocket,DatagramPacket
DatagramSocket类的作用:发送和接收数据包的套接字,不维护连接状态,不产生输入输出流
DatagramPacket类的作用:数据包,封装了数据,数据长度
1.两个类的构造方法如下:
DatagramPacket构造方法:
构造方法 | 说明 |
---|---|
DatagramPacket(byte [] buf,int length,InetAddress address,int port) | Buf是数据的字节数组,length是字节数组的长度,address是目标主机的IP地址,port是目标主机的端口 该构造用来构造对象,将长度为length的包发送到指定主机上的指定端口号 |
DatagramSocket的构造方法:
构造方法 | 说明 |
---|---|
DatagramSocket() | 创建DatagramSocket对象,并将其与本地主机上任何可用的端口绑定 |
DatagramSocket(int port) | 创建一个DatagramSocket对象,并将其与本地主机上的指定端口绑定 |
特别注意:1.在UDP通信中,通信的双方中,至少有一方需要指定端口号,2.在发送数据时数据包类对象创建时,一定要写入目标ip与端口号,而在接收数据时可以免除不写。3.若要通信双方都要相互通信时,则务必将双方的端口号都明确。