package com.javarush.task.task06.task0616;

/*
Минимальное число статиков
*/

public class Solution {
    public static int step;

    public static void main(String[] args) {
        method1();
    }

    public static void method1() {
        method2();
    }

    public static void method2() {
        new Solution().method3();
    }

    public void method3() {
        method4();
    }

    public void method4() {
        step++;
        for (StackTraceElement element : Thread.currentThread().getStackTrace())
            System.out.println(element);
        System.out.println("------------------------------------------------------");
        if (step > 1)
            return;
        main(null);
    }
}
РЕЗУЛЬТАТ: java.lang.Thread.getStackTrace(Thread.java:1559) com.javarush.task.task06.task0616.Solution.method4(Solution.java:28) com.javarush.task.task06.task0616.Solution.method3(Solution.java:23) com.javarush.task.task06.task0616.Solution.method2(Solution.java:19) com.javarush.task.task06.task0616.Solution.method1(Solution.java:15) com.javarush.task.task06.task0616.Solution.main(Solution.java:11) ------------------------------------------------------ java.lang.Thread.getStackTrace(Thread.java:1559) com.javarush.task.task06.task0616.Solution.method4(Solution.java:28) com.javarush.task.task06.task0616.Solution.method3(Solution.java:23) com.javarush.task.task06.task0616.Solution.method2(Solution.java:19) com.javarush.task.task06.task0616.Solution.method1(Solution.java:15) com.javarush.task.task06.task0616.Solution.main(Solution.java:11) com.javarush.task.task06.task0616.Solution.method4(Solution.java:33) com.javarush.task.task06.task0616.Solution.method3(Solution.java:23) com.javarush.task.task06.task0616.Solution.method2(Solution.java:19) com.javarush.task.task06.task0616.Solution.method1(Solution.java:15) com.javarush.task.task06.task0616.Solution.main(Solution.java:11) ------------------------------------------------------ Все методы вызываются 2 раза(через debug проверила), то есть должен быть вывод на экран всех вызовов - это с getStackTrace...main. Но при повторном вызове metod4 в стек уже не попадает строка java.lang.Thread.getStackTrace (ставила точку остановки на 1559 - все ок, заходит туда дважды), что за особенность такая?