ポインタなんて、しょせん仮想だよ
4GBの仮想アドレス空間も仮想。
実際のメモリがどうなっているかは、わからない

それに振り回される方がおかしい
あるObjectが、メモリ番地100-120にあるとして、
それをオブジェクトの生存中、ずっと持ち回っているだけ

そのメモリ番地は、実際にはコロコロと場所が変わるが、
我々は、100-120にあると思っているだけ

ほとんどアドレスを持つ意味がなく、
Java, C#ではポインタが無くなったくらい

ポインタに意味があるのは、直接本当のアドレスを指す、
マイコンやデバイスを扱うときだけ