throws in java code example

Example 1: throw io exception java

public static void foo() throws IOException {
    // some code here, when something goes wrong, you might do:
    throw new IOException("error message");
}

public static void main(String[] args) {
    try {
        foo();
    } catch (IOException e) {
        System.out.println(e.getMessage());
    }
}

Example 2: importance of throws keyword in java

Throws statement is used at the end of method signature to indicate that 
an exception of a given type may be thrown from the method.
The main purpose of throws keyword is to delegate responsibility of 
exception handling to the caller methods, in the case of checked exception.
In the case of unchecked exceptions, it is not required to use throws keyword.
We can use throws keyword only for throwable types otherwise compile time error 
saying incompatible types.
An error is unchecked, it is not required to handle by try catch or by throws.
  
  Syntax : Class Test{
Public static void main(String args[]) throws IE{
}}

The method should throw only checked exceptions and subclasses 
of checked exceptions. It is not recommended to specify exception 
superclasses in the throws class when the actual exceptions thrown in 
the method are instances of their subclass.