This
class implements a packet of data that may be sent or received over
the network through a DatagramSocket. Create a
DatagramPacket to be sent over the network with
one of the consructor methods that includes a network address. Create
a DatagramPacket into which data can be received
using one of the constructors that does not include a network address
argument. The receive( ) method of
DatagramSocket waits for data and stores it in a
DatagramPacket created in this way. The contents
and sender of a received packet can be queried with the
DatagramPacket instance methods.
New constructors and methods were added to this class in Java 1.4 to
support the SocketAddress abstraction of a network
address.
public final class
DatagramPacket {
// Public Constructors
public
DatagramPacket (byte[ ]
buf , int
length );
1.4 public
DatagramPacket (byte[ ]
buf , int
length , SocketAddress
address )
throws SocketException;
1.2 public
DatagramPacket (byte[ ]
buf , int
offset , int
length );
public
DatagramPacket (byte[ ]
buf , int
length , InetAddress
address ,
int
port );
1.4 public
DatagramPacket (byte[ ]
buf , int
offset , int
length ,
SocketAddress
address ) throws SocketException;
1.2 public
DatagramPacket (byte[ ]
buf , int
offset , int
length ,
InetAddress
address , int
port );
// Public Instance Methods
public InetAddress
getAddress ( ); synchronized
public byte[ ]
getData ( ); synchronized
public int
getLength ( ); synchronized
1.2 public int
getOffset ( ); synchronized
public int
getPort ( ); synchronized
1.4 public SocketAddress
getSocketAddress ( ); synchronized
1.1 public void
setAddress (InetAddress
iaddr ); synchronized
1.1 public void
setData (byte[ ]
buf ); synchronized
1.2 public void
setData (byte[ ]
buf , int
offset , int
length ); synchronized
1.1 public void
setLength (int
length ); synchronized
1.1 public void
setPort (int
iport ); synchronized
1.4 public void
setSocketAddress (SocketAddress
address ); synchronized
}
DatagramSocket.{receive( ), send(
)}, DatagramSocketImpl.{peekData( ),
receive( ), send( )},
MulticastSocket.send( )