I will try to take a picture.
Imagine a tree
a
b c
d e f g
Each letter represents a Node object.
What happens when you go into the 'a' Node is that it will look at the first left Node and find the "b". Then it will call the same method on 'b' and wait until it returns
'b' Node 'd'. 'd' ,
'd' Node . Node , . "d". , "d", Node 'd', . "b" Node.
'b', Node of 'b'.
Node 'e' Node of e, null return. 'e'. Node of 'e', 'e'. "b" node.
'b' 'a', 'a' 'a'.
:
d b e a f c g