El cliente y el servidor deben ponerse de acuerdo sobre el protocolo -- esto es, debe ponerse de acuerdo en el lenguaje para transferir la información de vuelta através del socket.
El paquete java.net del entorno de desarrollo de Java proporciona una clase -- Socket -- que representa un final de una comunicación de dos vías entre un programa java y otro programa de la red. La clase Socket implementa el lado del servidor de un enlace de dos vías. Si estás escribiendo software de servidor, también estarás interesado en la clase ServerSocket que implementa el lado del servidor en un enlace de dos vías. Esta lección muestra cómo utilizar las clases Socket y ServerSocket.
Si estás; intentando conectar con la World Wide Web, la clase URL y las clases relacionadas con esta (URLConnection, URLEncoder) son más indicadas para lo que estás haciendo. Las URLs son conexiones de nivel relativamente alto para la Web y utilizan los sockets como parte de su implementación interna. Puedes ver Trabajar con URLs para más información sobre como conectarse con la Web mediante URLs.
java.net.ServerSocket
java.net.Socket