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; // майдони объекти, ки ишора ба он нишон медиҳад, тағир дода мешавад
}
Бинобар ин, тағирот дар параметрҳои асосӣ дар дохили усул ба тағирёбани аслӣ таъсир намерасонад, дар ҳоле ки тағирот дар майдонҳои объектҳо — таъсир мерасонад, зеро объект ҳамон аст.