Hi Leute ich bin neu hier und würde mich gerne an eurem Wissen laben, sodass ich vielleicht auch bald mal in der Lage bin jemandem in JAVA zu helfen. Derzeit bremse ich meine Hausaufgabengruppe eher aus, als dass ich von großem Nutzen sein könnte...
Ich habe eine Hausaufgabe gestellt bekommen, bei der es darum geht zu erklären was das Programm ausgibt und aus welchem Grund. Meine Gruppe würde mich mitziehen. Doch ich habe meinen Stolz und will auch was lernen...
Ich verstehe nicht wieso
in der Hauptklasse nicht 5 sondern 3 ausgegeben wird.
Wäre lieb, wenn mir das einer von euch erklären könnte.
Danke
Das Programm:
und die beiden Unterklassen:
erste:
zweite:
Ich habe eine Hausaufgabe gestellt bekommen, bei der es darum geht zu erklären was das Programm ausgibt und aus welchem Grund. Meine Gruppe würde mich mitziehen. Doch ich habe meinen Stolz und will auch was lernen...
Ich verstehe nicht wieso
Java:
ValueChanger.callByValue(x);
System.out.println(x);
in der Hauptklasse nicht 5 sondern 3 ausgegeben wird.
Wäre lieb, wenn mir das einer von euch erklären könnte.
Danke
Das Programm:
Java:
public class TestValueChanger{
public static void main(String [] args){
int x = 3;
Value v = new Value ();
v.x=3;
ValueChanger.callByValue(x);
System.out.println(x);
ValueChanger.callByReference(v);
System.out.println(v.x);
}
}
und die beiden Unterklassen:
erste:
Java:
public class Value {
public int x;
}
zweite:
Java:
public class ValueChanger{
public static void callByValue(int v) {
v=5;
}
public static void callByReference(Value v) {
v.x=5;
}
}