You always get copies. With object references (pointers) the reference can be used to update the object it points to. You can not change the value of the original reference or primitive.

If you...