13.2.4 DatagramPacket类
在Java的 java.net 包提供了一个用于实现无连接分组传送服务的DatagramPacket类,该类主要负责对数据的封装。由于该类服务的是无连接通信,因此主要应用于UDP通信。
对于无连接通信而言,不分服务端和客户端,只分发送端和接收端。因此,在创建DatagramPacket对象的时候,根据发送端和接收端的不同,应选择不同的构造方法。DatagramPacket类的构造方法如表13.7所示。
表13.7 DatagramPacket类的构造方法

续表(https://www.daowen.com)

表13.7中的构造方法,前两个方法在构造DatagramPacket对象的时候没有指定IP地址和端口号,因此这两个方法只能用于接收端,而不能用于发送端。因为发送端必须明确数据的目的地(IP地址和端口号)才能发送成功,而接收端不需要知道数据的来源,只需要接收数据,因此在接收端不需要指明数据的IP地址和端口号。
DatagramPacket类还提供了一些用于获取DatagramPacket数据报信息的方法,这些常用方法如表13.8所示。
表13.8 DatagramPacket的常用方法
