public class Fluxo {
    public static void main(String[] args) {
        System.out.println("Ini do main");
        try {
            metodo1();
        } catch (ArithmeticException | NullPointerException | MinhaExcecao ex) {
             String msg = ex.getMessage();
             System.out.println("Erro ocorrido " + msg);
        } 
        System.out.println("Fim do main");
    }
    private static void metodo1() {
        System.out.println("Ini do metodo1");
        metodo2();
        System.out.println("Fim do metodo1");
    }
    private static void metodo2() {
        System.out.println("Ini do metodo2");
        //ArithmeticException ex = new ArithmeticException();
        //throw ex; 
        //throw new ArithmeticException("Deu merda");
        throw new MinhaExcecao("erro");
        //System.out.println("Fim do metodo2");
    }
}
Erro:
Unreachable catch block for MinhaExcecao. This exception is never thrown from the try statement body 
            