Junior — Middle
როგორ ხორციელდება მონაცემების გადაცემა მეთოდის პარამეტრებში Java-ში?
sobes.tech AI
პასუხი AI-სგან
Java-ში მონაცემების გადაცემა მეთოდების პარამეტრებში ხდება მნიშვნელობით (pass-by-value). ძირითადი ტიპებისთვის (int, boolean და ა.შ.) მეთოდს გადაეცემა მნიშვნელობის კოპია. ობიექტებისთვის — ობიექტის მითითების კოპია, ანუ თვით ობიექტი არ იკოპირებს, არამედ მის მითითებას გადაეცემა მნიშვნელობით.
მაგალითი:
void changeValue(int x) {
x = 10; // ადგილობრივი კოპია იცვლება
}
void changeObject(MyObject obj) {
obj.field = 10; // ობიექტის ველი იცვლება, რომელსაც მითითება უჭირავს
}
ამ გზით, მეთოდის შიგნით პრიმიტიული პარამეტრების ცვლილებები არ ახდენს გავლენას ორიგინალურ ცვლილებზე, ხოლო ობიექტების ველების ცვლილებები — ახდენს, რადგან ობიექტი იგივეა.