Sobes.tech
Junior — Middle

Hogyan történik az adatok átadása a Java nyelvben a metódus paramétereibe?

sobes.tech MI

Válasz az MI-től

Java-ban az adatok átadása a metódus paramétereinek érték szerint történik (pass-by-value). Az alapvető típusokhoz (int, boolean stb.) a érték másolata kerül átadásra a metódusnak. Objektumok esetén a referencia másolata kerül átadásra, vagyis magát az objektumot nem másolják, csak a referencia érték szerint kerül átadásra.

Példa:

void changeValue(int x) {
    x = 10; // helyi másolat módosul
}

void changeObject(MyObject obj) {
    obj.field = 10; // az objektum mezője, amelyre a referencia mutat, módosul
}

Így a primitív paraméterek változtatása a metóduson belül nem befolyásolja az eredeti változókat, míg az objektum mezőinek változtatása igen, mivel az objektum ugyanaz.