What are the different types of exception in java?

Some of the common exceptions you may encounter are:

1. ArrayIndexOutOfBoundsException - Thrown when attempting to access an array with an invalid index value (either negative or beyond the length of the array).

2. ClassCastException - Thrown when attempting to cast a reference variable to a type that fails the IS-A test.

3. IllegalArgumentException - Thrown when a method receives an argument formatted differently than the method expects.

4. IllegalStateException - Thrown when the state of the environment doesn't match the operation being attempted, e.g., using a Scanner that's been closed.

5. NullPointerException - Thrown when attempting to access an object with a reference variable whose current value is null.

6. NumberFormatException - Thrown when a method that converts a String to a number receives a String that it cannot convert.

7. AssertionError - Thrown when a statement's boolean test returns false.

8. ExceptionInInitializerError - Thrown when attempting to initialize a static variable or an initialization block.

9. StackOverflowError - Typically thrown when a method recurses too deeply. (Each invocation is added to the stack.)

10. NoClassDefFoundError - Thrown when the JVM can't find a class it needs, because of a command-line error, a classpath issue, or a missing .class file.