i want to konw the program flow in recursive method in java? :  class Test {
         
         int i=0;
    
        void method2(){
        
        if(i==6) return;
        System.out.print("before");
        i++;
        method2();
        System.out.println("after"):
        
    }
}

if I call method2() from another class  .I want to know how the program will flow here . or why the output that's executed.