URL class in Java with Examples
The URL class is the gateway to any of the resource available on the internet. A Class URL represents a Uniform Resource Locator, which is a pointer to a “resource” on the World Wide Web. A resource can point to a simple file or directory, or it can refer to a more complicated object, such as a query to a database or to a search engine
What is a URL?
As many of you must be knowing that Uniform Resource Locator-URL is a string of text that identifies all the resources on Internet, telling us the address of the resource, how to communicate with it and retrieve something from it.
A Simple URL looks like:
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course.
Components of a URL:-
A URL can have many forms. The most general however follows three-components system-
- Protocol: HTTP is the protocol here
- Hostname: Name of the machine on which the resource lives.
- File Name: The path name to the file on the machine.
- Port Number: Port number to which to connect (typically optional).
Some constructors for URL class:-
- URL(String address) throws MalformedURLException: It creates a URL object from the specified String.
- URL(String protocol, String host, String file): Creates a URL object from the specified protocol, host, and file name.
- URL(String protocol, String host, int port, String file): Creates a URL object from protocol, host, port and file name.
- URL(URL context, String spec): Creates a URL object by parsing the given spec in the given context.
- URL(String protocol, String host, int port, String file, URLStreamHandler handler):-
Creates a URL object from the specified protocol, host, port number, file, and handler.
- URL(URL context, String spec, URLStreamHandler handler):-
Creates a URL by parsing the given spec with the specified handler within a specified context.
https://www.google.co.in/?gfe_rd=cr&ei=ptYqWK26I4fT8gfth6CACg#q=geeks+for+geeks+java https://www.geeksforgeeks.org/jvm-works-jvm-architecture/ Different components of the URL3- Protocol:- https Hostname:- www.google.co.in Default port:- 443 Query:- q=gnu&rlz=1C1CHZL_enIN714IN715&oq=gnu&aqs=chrome..69i57j69i60l5.653j0j7&sourceid=chrome&ie=UTF-8 Path:- /search File:- /search?q=gnu&rlz=1C1CHZL_enIN714IN715&oq=gnu&aqs=chrome..69i57j69i60l5.653j0j7&sourceid=chrome&ie=UTF-8 Reference:- q=geeks+for+geeks+java
Explanation of some methods used in the above program is as follows:-
- public String toString(): As in any class, toString() returns the string representation of the given URL object.
- public String getAuthority(): returns the authority part of URL or null if empty.
- public String getPath(): returns the path of the URL, or null if empty.
- public String getQuery(): returns the query part of URL. Query is the part after the ‘?’ in the URL. Whenever logic is used to display the result, there would be a query field in URL. It is similar to querying a database.
- public String getHost(): return the hostname of the URL in IPv6 format.
- public String getFile(): returns the file name.
- public String getRef(): Returns the reference of the URL object. Usually, the reference is the part marked by a ‘#’ in the URL. You can see the working example by querying anything on Google and seeing the part after ‘#’.
- public int getPort(): returns the port associated with the protocol specified by the URL.
- public int getDefaultPort: returns the default port used.
- public String getProtocol(): returns the protocol used by the URL.
This article is contributed by Rishabh Mahrsee. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.