Networking in Java

Java is a premier language for network programming. java.net package encapsulate large number of classes and interface that provides an easy-to use means to access network resources. Here are some important classes and interfaces of java.net package.


Some Important Classes

CLASSES
CacheRequestCookieHandler
CookieManagerDatagrampacket
Inet AddressServerSocket
SocketDatagramSocket
ProxyURL
URLConnection

Some Important Interfaces

INTERFACES
CookiePolicyCookieStore
FileNameMapSocketOption
InetAddressServerSocket
SocketImplFactory ProtocolFamily

InetAddress

Inet Address encapsulates both numerical IP address and the domain name for that address. Inet address can handle both IPv4 and Ipv6 addresses. Inet Address class has no visible constructor. To create an inet Address object, you have to use Factory methods.

Three commonly used Inet Address factory methods are.

  1. static InetAddress getLocalHost() throws UnknownHostException
  2. static InetAddress getByName (String hostname) throws UnknownHostException
  3. static InetAddress[ ] getAllByName (String hostname) throws UnknownHostException

InetAddress subclasses


Example using InetAddress class

import java.net.*;
class Test
{
 public static void main(String[] args)
 {
  InetAddress address = InetAddress.getLocalHost(); 
  System.out.println(address);
  address = InetAddress.getByName("www.scanftree.com");
  System.out.println(address);
  InetAddress sw[] = InetAddress.getAllByName("www.google.com");
  for(int i=0; i< sw.length; i++)
  {
   System.out.println(sw[i]);
  }
 }
}

Output:

Welcome-PC/59.161.87.227
www.scanftree.com/208.91.198.55
www.google.com/74.125.236.115
www.google.com/74.125.236.116
www.google.com/74.125.236.112
www.google.com/74.125.236.113
www.google.com/74.125.236.114
www.google.com/2404:6800:4009:802:0:0:0:1014

Socket and ServerSocket Class

Socket is foundation of modern networking, a socket allows single computer to serve many different clients at once. Socket establishes connection through the use of port, which is a numbered socket on a particular machine. Socket communication takes place via a protocol. Socket provides communication mechanism between two computers using TCP. There are two kind of TCP sockets in Java. One is for server and other is for client.

  • ServerSocket is for servers.
  • Socket class is for client.


URL class

Java URL Class present in java.net package, deals with URL (Uniform Resource Locator) which uniquely identify or locate resources on internet.

url defination


Important Methods of URL class

  • getProtocol() : Returns protocol of URL
  • getHost() : Returns hostname(domain name) of URL
  • getPort() : Returns port number of URL
  • getFile() : Returns filename of URL

Program using URL class

import java.net.*;
class Test
{
 public static void main(String[] arg) throws MalFormedURLException 
 {
  URL hp = New URL("http://www.scanftree.com/index");
  system.out.println(hp.getProtocol[]); 
  System.out.println(hp.getFile[]);
 }
}

Ouput:

http
-1
www.scanftree.com 
/index

Quantitative Aptitude
Reasoning
Programming
Interview