In simple words:
calling method reset(o1) will make "obj", the local variable of method reset, refer to the same object "o1" refers to.
Inside method reset, "obj" will then be set to null (refers to nothing)
At this point only "obj" is affected not "o1", who still refers to the same object before calling reset(o1)