Below is my code. I set the object to null, still my print statement can print the property name
correctly. Can anyone tell me what's happening?
public class MyClass {
String name;
public String getName() {
return name;
}
public void setName(String s) {
name = s;
}
public static void main(String args[]) {
MyClass obj = new MyClass();
obj.changeName(obj);
System.out.println("Name = " + obj.getName());
}
public MyClass() {
name = "A";
}
public void changeName(MyClass obj) {
obj.setName("B");
obj = null;
}
}
Output is:
Name = B