Em Java, a classe que permite o estabelecimento de uma conexão pelo lado do cliente é Socket, que provê toda a funcionalidade necessária para a interface no lado cliente de uma conexão.
Para criar um soquete, o construtor da classe tipicamente utilizado é:
public Socket(InetAddress address, int port) throws IOException
Os argumentos do construtor estabelecem o endereço IP da máquina remota na conexão.
A classe Socket
oferece também métodos para
obter informações sobre os endereços (máquina e porta) envolvidos na
conexão e para estabelecer timeouts associados à conexão.
Uma vez que a conexão esteja estabelecida, a aplicação cliente tipicamente irá obter os streams a ela associados para efetivar a transferência de dados com o servidor. Para tanto, os métodos getInputStream e getOutputStream são utilizados para obter os pontos de recepção e envio de dados, respectivamente.