Junior — Middle
Kaip vyksta duomenų perdavimas į metodo parametrus Java kalboje?
sobes.tech AI
Atsakymas iš AI
Java kalba duomenų perdavimas į metodų parametrus vyksta pagal reikšmę (pass-by-value). Primitiviems tipams (int, boolean ir kt.) į metodą perduodama kopija reikšmės. Objektais perduodama kopija nuorodos į objektą, tai yra pats objektas nėra kopijuojamas, tik nuoroda į jį perduodama pagal reikšmę.
Pavyzdys:
void changeValue(int x) {
x = 10; // vietinė kopija keičiasi
}
void changeObject(MyObject obj) {
obj.field = 10; // keičiasi objekto laukas, į kurį nurodo nuoroda
}
Šiuo būdu, primitivių parametrų pakeitimai metodo viduje nepaveikia originalių kintamųjų, o objektų laukų pakeitimai — paveikia, nes objektas tas pats.