How do I use multi-catch statement?

The multi-catch is a language enhancement feature introduces in the Java 7. This allows us to use a single catch block to handle multiple exceptions. Each exception is separated by the pipe symbol (|).

Using the multi-catch simplify our exception handling and also reduce code duplicates in the catch block. Let’s see an example below:

package org.kodejava.lang;

import java.sql.SQLException;

public class MultiCatchDemo {
    public static void main(String[] args) {
        MultiCatchDemo demo = new MultiCatchDemo();
        try {
        } catch (IOException | SQLException | ClassNotFoundException e) {

    private void callA() throws IOException {
        throw new IOException("IOException");

    private void callB() throws SQLException {
        throw new SQLException("SQLException");

    private void callC() throws ClassNotFoundException {
        throw new ClassNotFoundException("ClassNotFoundException");