Checked and Unchecked Exceptions example

In this example we shall show you how to use a checked and an unchecked exception. A checked exception is anything that is a subclass of Exception, except for RuntimeException and its subclasses. In order to use a checked and an unchecked exception we have followed the steps below:

  • We have created a method, void checkSize(String fileName) that creates a new File with a given String filename and throws an IOException if the filename length is too large.
  • We also create another method, int divide(int x, int y) that divides two int variables and returns the result.
  • When using the two methods, the first one must be put in a try-catch block, whereas the second one can be used without being surrounded by the try-catch block. It is an unchecked exception, so it doesn’t require you to catch it.

Let’s take a look at the code snippet that follows:

package com.javacodegeeks.snippets.basics;

import java.io.File;
import java.io.IOException;

public class CheckedUncheckedExceptions {

    public static void main(String[] args) {

  // We must catch the checked exception - to test use an existing file!

  try {


  } catch (IOException e) {



  // The unchecked exception doesn't requires you to catch it

  CheckedUncheckedExceptions.divide(1, 0);

     * This method throws a Checked Exception, so it must declare the
     * Exception in its method declaration
     * @param fileName given file name
     * @throws IOException when the file size is to large.

    public static void checkSize(String fileName) throws IOException {

  File file = new File(fileName);

  if (file.length() > Integer.MAX_VALUE) {

throw new IOException("File size is too large!");


     * This method throws a RuntimeException.
     * There is no need to declare the Exception in the method declaration
     * @param x the dividend
     * @param y the divisor
     * @return the division result
     * @throws ArithmeticException when arithmetic exception occurs (divided by zero)
    public static int divide(int x, int y) {

  return x / y;


This was an example of how to use a checked and an unchecked exception in Java.

Ilias Tsagklis

Ilias is a software developer turned online entrepreneur. He is co-founder and Executive Editor at Java Code Geeks.
Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Inline Feedbacks
View all comments
Back to top button