DatagramSockets

Eu estava usando sockets e armazenando os dados que eu iria enviar para o servidor da forma do código abaixo

          OutputStream o = socket.getOutputStream();
	  ObjectOutput s = new ObjectOutputStream(o);
	  
	  s.writeObject("Today's date");
	  s.writeObject(new Date());

Como eu faria para usar DatagramSockets?

tirei de um livro de redes de computadores - Kurose & Ross

    DatagramSocket clientSocket = new DatagramSocket();
    
    InetAddress IPAdress = InetAddress.getByName("hostname");
    byte[] sendData = new byte[1024];
    byte[] receiveData = new byte[1024];
    String sentence = inFromUser.readLine();
    
    sendData = sentence.getBytes();
    // monta o pacote a ser enviado
    DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, IPAdress, 9876);
    clientSocket.send(sendPacket); // envia pacote
    DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length);
    clientSocket.receive(receivePacket);