Indirect recursion in Java