I have a class , it passes objects,primitive . can anyone please explain this
public class TestObj {
String name;
int age;
public TestObj(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "TestObj{" + "name=" + name + ", age=" + age + '}';
}
}
main class
public class Test {
public static void main(String[] args) {
Test t = new Test();
TestObj obj = new TestObj("James", 25);
System.out.println("************* Output ****************");
System.out.println(obj);
t.setName(obj);
t.setAge(obj);
System.out.println(obj);
String a = "Hai Test";
System.out.println(">> :: " + a);
t.setString(a);
System.out.println(":: " + a);
int x = 10;
System.out.println("------- " + x);
t.setInt(x);
System.out.println("------- " + x);
}
public void setInt(int y) {
y = 25;
}
public void setString(String x) {
x = "Did i changed my Data";
}
public void setName(TestObj obj1) {
obj1.setName("I got Changed");
}
public void setAge(TestObj obj1) {
obj1.setAge(35);
}
}
************* Output ****************
TestObj{name=James, age=25}
TestObj{name=I got Changed, age=35}
:: Hai Test
:: Hai Test
------- 10
------- 10