'ogg' è (detto semplicemente) uno spazio di memoria che fa da "contenitore" per un valore. È certamente un valore più speciale, non è un banale int, long o double .... è un "reference". Ma un valore lo è comunque.
A ogg viene assegnato un valore che è il riferimento al nuovo oggetto PuntoTridimensionale. Se successivamente assegni a ogg qualunque altro riferimento ad un oggetto che "è-un" Punto, semplicemente cambi il valore che è in ogg. Senza che questo vada ad influire minimamente sull'oggetto che era referenziato prima da ogg (a parte il concetto generale che se quello che era referenziato prima non è più raggiungibile in altri modi, andrà in pasto al garbage collector appena possibile).