## Uses of Class
java.net.SocketException

Packages that use SocketException
java.net: Provides the classes for implementing networking applications.

### Uses of SocketException in java.net

Subclasses of SocketException in java.net
`class` `BindException` Signals that an error occurred while attempting to bind a socket to a local address and port.
`class` `ConnectException` Signals that an error occurred while attempting to connect a socket to a remote address and port.
`class` `NoRouteToHostException` Signals that an error occurred while attempting to connect a socket to a remote address and port.
`class` `PortUnreachableException` Signals that an ICMP Port Unreachable message has been received on a connected datagram.

Methods in java.net that throw SocketException
`protected abstract void` DatagramSocketImpl.`bind(int lport, InetAddress laddr)` Binds a datagram socket to a local port and address.
`void` DatagramSocket.`bind(SocketAddress addr)` Binds this DatagramSocket to a specific address and port.
`protected void` DatagramSocketImpl.`connect(InetAddress address, int port)` Connects a datagram socket to a remote destination.
`void` DatagramSocket.`connect(SocketAddress addr)` Connects this socket to a remote socket address (IP address + port number).
`protected abstract void` DatagramSocketImpl.`create()` Creates a datagram socket.
`boolean` DatagramSocket.`getBroadcast()` Tests if SO_BROADCAST is enabled.
`static NetworkInterface` NetworkInterface.`getByIndex(int index)` Get a network interface given its index.
`static NetworkInterface` NetworkInterface.`getByInetAddress(InetAddress addr)` Convenience method to search for a network interface that has the specified Internet Protocol (IP) address bound to it.
`static NetworkInterface` NetworkInterface.`getByName(String name)` Searches for the network interface with the specified name.
`byte[]` NetworkInterface.`getHardwareAddress()` Returns the hardware address (usually MAC) of the interface if it has one and if it can be accessed given the current privileges.
`InetAddress` MulticastSocket.`getInterface()` Retrieve the address of the network interface used for multicast packets.
`boolean` Socket.`getKeepAlive()` Tests if `SO_KEEPALIVE` is enabled.
`boolean` MulticastSocket.`getLoopbackMode()` Get the setting for local loopback of multicast datagrams.
`int` NetworkInterface.`getMTU()` Returns the Maximum Transmission Unit (MTU) of this interface.
`NetworkInterface` MulticastSocket.`getNetworkInterface()` Get the multicast network interface set.
`static Enumeration<NetworkInterface>` NetworkInterface.`getNetworkInterfaces()` Returns all the interfaces on this machine.
`boolean` Socket.`getOOBInline()` Tests if `SO_OOBINLINE` is enabled.
`Object` SocketOptions.`getOption(int optID)` Fetch the value of an option.
`int` DatagramSocket.`getReceiveBufferSize()` Get value of the SO_RCVBUF option for this `DatagramSocket`, that is the buffer size used by the platform for input on this `DatagramSocket`.
`int` ServerSocket.`getReceiveBufferSize()` Gets the value of the `SO_RCVBUF` option for this `ServerSocket`, that is the proposed buffer size that will be used for Sockets accepted from this `ServerSocket`.
`int` Socket.`getReceiveBufferSize()` Gets the value of the `SO_RCVBUF` option for this `Socket`, that is the buffer size used by the platform for input on this `Socket`.
`boolean` DatagramSocket.`getReuseAddress()` Tests if SO_REUSEADDR is enabled.
`boolean` ServerSocket.`getReuseAddress()` Tests if `SO_REUSEADDR` is enabled.
`boolean` Socket.`getReuseAddress()` Tests if `SO_REUSEADDR` is enabled.
`int` DatagramSocket.`getSendBufferSize()` Get value of the SO_SNDBUF option for this `DatagramSocket`, that is the buffer size used by the platform for output on this `DatagramSocket`.
`int` Socket.`getSendBufferSize()` Get value of the `SO_SNDBUF` option for this `Socket`, that is the buffer size used by the platform for output on this `Socket`.
`int` Socket.`getSoLinger()` Returns setting for `SO_LINGER`.
`int` DatagramSocket.`getSoTimeout()` Retrieve setting for SO_TIMEOUT.
`int` Socket.`getSoTimeout()` Returns setting for `SO_TIMEOUT`.
`boolean` Socket.`getTcpNoDelay()` Tests if `TCP_NODELAY` is enabled.
`int` DatagramSocket.`getTrafficClass()` Gets traffic class or type-of-service in the IP datagram header for packets sent from this DatagramSocket.
`int` Socket.`getTrafficClass()` Gets traffic class or type-of-service in the IP header for packets sent from this Socket
`boolean` NetworkInterface.`isLoopback()` Returns whether a network interface is a loopback interface.
`boolean` NetworkInterface.`isPointToPoint()` Returns whether a network interface is a point to point interface.
`boolean` NetworkInterface.`isUp()` Returns whether a network interface is up and running.
`void` DatagramSocket.`setBroadcast(boolean on)` Enable/disable SO_BROADCAST.
`void` MulticastSocket.`setInterface(InetAddress inf)` Set the multicast network interface used by methods whose behavior would be affected by the value of the network interface.
`void` Socket.`setKeepAlive(boolean on)` Enable/disable `SO_KEEPALIVE`.
`void` MulticastSocket.`setLoopbackMode(boolean disable)` Disable/Enable local loopback of multicast datagrams The option is used by the platform's networking code as a hint for setting whether multicast data will be looped back to the local socket.
`void` MulticastSocket.`setNetworkInterface(NetworkInterface netIf)` Specify the network interface for outgoing multicast datagrams sent on this socket.
`void` Socket.`setOOBInline(boolean on)` Enable/disable `SO_OOBINLINE` (receipt of TCP urgent data) By default, this option is disabled and TCP urgent data received on a socket is silently discarded.
`void` SocketOptions.`setOption(int optID, Object value)` Enable/disable the option specified by optID.
`void` DatagramSocket.`setReceiveBufferSize(int size)` Sets the SO_RCVBUF option to the specified value for this `DatagramSocket`.
`void` ServerSocket.`setReceiveBufferSize(int size)` Sets a default proposed value for the `SO_RCVBUF` option for sockets accepted from this `ServerSocket`.
`void` Socket.`setReceiveBufferSize(int size)` Sets the `SO_RCVBUF` option to the specified value for this `Socket`.
`void` DatagramSocket.`setReuseAddress(boolean on)` Enable/disable the SO_REUSEADDR socket option.
`void` ServerSocket.`setReuseAddress(boolean on)` Enable/disable the `SO_REUSEADDR` socket option.
`void` Socket.`setReuseAddress(boolean on)` Enable/disable the `SO_REUSEADDR` socket option.
`void` DatagramSocket.`setSendBufferSize(int size)` Sets the SO_SNDBUF option to the specified value for this `DatagramSocket`.
`void` Socket.`setSendBufferSize(int size)` Sets the `SO_SNDBUF` option to the specified value for this `Socket`.
`void` Socket.`setSoLinger(boolean on, int linger)` Enable/disable `SO_LINGER` with the specified linger time in seconds.
`void` DatagramSocket.`setSoTimeout(int timeout)` Enable/disable SO_TIMEOUT with the specified timeout, in milliseconds.
`void` ServerSocket.`setSoTimeout(int timeout)` Enable/disable `SO_TIMEOUT` with the specified timeout, in milliseconds.
`void` Socket.`setSoTimeout(int timeout)` Enable/disable `SO_TIMEOUT` with the specified timeout, in milliseconds.
`void` Socket.`setTcpNoDelay(boolean on)` Enable/disable `TCP_NODELAY` (disable/enable Nagle's algorithm).
`void` DatagramSocket.`setTrafficClass(int tc)` Sets traffic class or type-of-service octet in the IP datagram header for datagrams sent from this DatagramSocket.
`void` Socket.`setTrafficClass(int tc)` Sets traffic class or type-of-service octet in the IP header for packets sent from this Socket.
`boolean` NetworkInterface.`supportsMulticast()` Returns whether a network interface supports multicasting or not.

Constructors in java.net that throw SocketException
Constructor and Description
`DatagramSocket()` Constructs a datagram socket and binds it to any available port on the local host machine.
`DatagramSocket(int port)` Constructs a datagram socket and binds it to the specified port on the local host machine.
`DatagramSocket(int port, InetAddress laddr)` Creates a datagram socket, bound to the specified local address.
`DatagramSocket(SocketAddress bindaddr)` Creates a datagram socket, bound to the specified local socket address.
`Socket(SocketImpl impl)` Creates an unconnected Socket with a user-specified SocketImpl.