Difference between Exception and Error in Java

Exceptions and errors both are subclasses of Throwable class. The error indicates a problem that mainly occurs due to the lack of system resources and our application should not catch these types of problems. Some of the examples of errors are system crash error and out of memory error. Errors mostly occur at runtime that's they belong to an unchecked type. 

Exceptions are the problems which can occur at runtime and compile time. It mainly occurs in the code written by the developers.  Exceptions are divided into two categories such as checked exceptions and unchecked exceptions. 

Sr. No.KeyErrorException
1Type Classified as an unchecked type Classified as checked and unchecked 
2Package It belongs to java.lang.error It belongs to java.lang.Exception 
3Recoverable/ IrrecoverableIt is irrecoverableIt is recoverable
 It can't be occur at compile time It can occur at run time compile time both 
5ExampleOutOfMemoryError ,IOError NullPointerException , SqlException 

Example of Error

public class ErrorExample {
   public static void main(String[] args){
   public static void recursiveMethod(int i){


Exception in thread "main" java.lang.StackOverflowError
   at ErrorExample.ErrorExample(Main.java:42)

Example of Exception

public class ExceptionExample {
   public static void main(String[] args){
      int x = 100;
      int y = 0;
      int z = x / y;


java.lang.ArithmeticException: / by zero
   at ExceptionExample.main(ExceptionExample.java:7)

Updated on: 14-Sep-2023

22K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started