Hallo zusammen,
ich bin noch recht unerfahren was Java angeht.. Daher erschließt sich mir noch nicht ganz warum folgender Code 110, 20, 30 ausgibt.
Ich hoffe Ihr könnt mir helfen =)
Ausgabe:
110 20 30
Die letzten beiden Werte (b.x und c.x) kann ich nachvollziehen, aber den Wert für a.x verstehe ich nicht.
ich bin noch recht unerfahren was Java angeht.. Daher erschließt sich mir noch nicht ganz warum folgender Code 110, 20, 30 ausgibt.
Ich hoffe Ihr könnt mir helfen =)
Code:
import static java.lang.System.out;
public class Test{
private int x;
public Test(int val){
this.x = val;
}
public void foo (int x, Test ref){
ref = new Test(100);
x += 200;
this.x += ref.x;
}
public static void main (String[]args){
Test a = new Test (10);
Test b = new Test(20);
int c = 30;
a.foo (c,b);
out.println(a.x+ " "+b.x+" "+c);
}
}
Ausgabe:
110 20 30
Die letzten beiden Werte (b.x und c.x) kann ich nachvollziehen, aber den Wert für a.x verstehe ich nicht.