Как решить задание я вроде понял, но не понимаю суть, как именно все работает. Если не сложно объясните по пунктам. На сколько я понял, для того, чтобы вызвать метод1 из мейна (из-за отсутствия экземпляра класса, т.е. просто вызов метода) мы делаем метод1 статичным. Далее тоже самое со вторым методом. Третий метод оставляем нестатичным, т.к. тут создан объект экземпляр класса "new Solution()". Далее программа уже компилируется, но непрерывным циклом, и для прохождения задания это неправильно. Собственно для прохождения мы делаем метод4 статическим и соответственно переменную экземпляра step также делаем статической. Все, теперь программа единожды выводит на экран результат. В чем и вопрос, почему такая разница? Каким образом это повлияло, и почему именно на непрерывность?