The Socket Class
The
java.net.Socket
class is Java’s fundamental
class for performing client-side TCP operations. Other
client-oriented classes that make TCP network connections, such as
URL
, URLConnection
,
Applet
, and JEditorPane
, all
ultimately end up invoking the methods of this class. This class
itself uses native code to communicate with the local TCP stack of
the host operating system. The methods of the
Socket
class set up and tear down connections and
set as various socket options. Because TCP sockets are more or less
reliable connections, the interface that the
Socket
class provides to the programmer is
streams. The actual reading and writing of data over the socket is
accomplished via the familiar stream classes.
The Constructors
The four nondeprecated public Socket
constructors
are simple. Each lets you specify the host and the port you want to
connect to. Hosts may be specified as an
InetAddress
or a String
. Ports
are always specified as int
values from
to 65,535. Two of the constructors also specify the local address and
local port from which data will be sent. You might need to do this
when you want to select one particular network interface from which
to send data on a multihomed host.
In Java 1.1 and later, the Socket
class also has
two protected constructors. Network clients and servers will probably
never need to use these; they become important if you’re
creating a subclass of Socket
(perhaps to implement a new type of socket that automatically performs encryption, ...
Get Java Network Programming, Second Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.