When you parent an object to another, the child object will remember its original location and no matter where you move the parent, the child will always display its original location. It’s as if the child always remembers it true location. That is why when you unparent, the child jumps back to where it was originally.
And when you parent, the child never moves the parent, the parent moves the child, it drags it wherever it goes. So if you select the child and move it, the parent wont move. But of you select the parent and move it, the child will follow along.