Új hozzászólás Aktív témák
-
robisz
senior tag
válasz
Inv1sus
#1467
üzenetére
Halihó!
Na akkor a tisztánlátás kedvéért: Java-ban ugye vannak a primitív tipusok (kisbetűs int, byte, char satöbbi) és az objektum típusok (Object és leszármazottai).
A primitíveknél tiszta sor, hogy sima érték szerinti paraméterátadás van.
Az objektumoknál az okozza a kavarodást, hogy egy változó valójában egy referencia a valódi objektumra. Ez ugyanúgy működik mint egy pointer csak el van rejtve a programozó elől, hogy hova mutat, nem lehet vele pointer műveleteket végezni stb.
Amit irtál az igaz, az objektum típusú változóknál is érték szerint történik a paraméterátadás, de ilyenkor a referencia értéke másolódik át. Azaz lesz egy másik referenciád ami ugyannarra az objektumra mutat. Tehát ha a metóduson belül módosítod az objektumot, akkor az eredeti is módosulni fog. Ha viszont a referenciának új értéket adsz (értékül adsz neki egy másik objektumot) azzal azeredeti referenciát nem változtatod meg azaz továbbra is az eredeti objektumra fog mutatni.Tehát a lényeg hogy az objektumoknál a referencia érték szerint adódik át, de mivel az eredeti objektumot tudod vele módosítani, így a működése a cím szerinti paraméterátadáshoz áll közelebb. Ezért szerintem a definíció is csak a fenti magyarázattal együtt lehet teljes.
UI: aztán persze vannak kivételek (pl. távoli eljárások, RMI) amikor ténylegesen az egész objektum lemásolódik de az már egy másik téma.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- 337 Eladó keveset használt Xerox Versalink B7030 a képek szerinti állapotban új tonerrel
- Eladó Xiaomi Smart Band 10 okoskarkötő!
- Asus Tuf Gaming A16 ÚJ // Ryzen 7 // RTX 5070 // Számla // Garancia //
- Legion Slim 5 16ARP9 15.6" QHD+ IPS Ryzen 7 7435HS RTX 4060 16GB 512GB NVMe gar
- ASUS Zenbook 14 - 14" 2.8K OLED 90Hz - i5-1240P - 16GB - 512GB - Win11 - 1,5 év garancia - MAGYAR
- Apple iPad Air 2 (A1567) 32GB Wi-Fi + Cellular Arany
- Részletfizetés Kamatmentes 12 havi részlet Acer Predator 18 AI Gamer / Laptop RTX 5070 Ti Ultra 9
- Lenovo Legion 5 RYZEN 5 6600H RTX 3050Ti 4GB 16 GB DDR5 512 GB SSD FHD 165 Hz Magyar bill Gari
- LG UltraGear 27GP850-B IPS Monitor! 2560x1440 / 165Hz / 1ms / G-Sync / FreeSync
- 243 - Lenovo Legion Pro 7 (16IAX10H) - Intel Core U9 275HX, RTX 5080 (ELKELT)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

