Почему то что должно выводится после catch выводится вообще до stackTrace()??? System.out.flush() не помогает
public class ExtTest {
    static void genExc(){
        int nums [] = new int[4];
        System.out.println("Before exc");
        nums[7]=10;
        System.out.println("Ne vivoditsa");
    }
}
class UseThrowableMethods{
    public static void main(String[] args) {
        try{
            ExtTest.genExc();

        }
        catch (ArrayIndexOutOfBoundsException e){
            System.out.println("Standart message");
            System.out.println(e);
            System.out.println("stack trace: ");
            e.printStackTrace();

        }
        System.out.println("after catch");
    }
}