An error is an irrecoverable condition occurring at run time.Such as OutOfMemory error.these JVM errors and you can not repair them at runtime . While exceptions are conditions that occur because of bad input etc. e.g. FileNotFoundException will be thrown if the specified file does not exit, or a NullPointerException will take place if you try using a null reference. in most of the cases it is possible to recover from an exception.