Hirdetés

Keresés

Új hozzászólás Aktív témák

  • loszerafin
    senior tag

    szerintem meg teljesen jol, es erthetoen van leirva, nem ertem mi a gond? Az ertek es a referencia szerinti atadas kozott az a leglenyegesebb kulonbseg, hogy az eredeti ertek megvaltozik-e. Ha objektumot adsz at, es megvaltoztatod egy parameteret, akkor az eredetinek is valtozni fog. Marpedig ekkor a parameteratadas nem lehet ertek szerinti :)

    Teljesen érthetően van leírva a Sybex könyvben és teljesen rosszul.

    A sun weboldalán van az igazság, ahol szó szerint ez van:
    ------------------
    Primitive arguments, such as an int or a double, are passed into methods by value.
    [....]
    Reference data type parameters, such as objects, are also passed into methods by value.
    ------------------
    Mivel tudtommal nincs más típusú paraméter a Java-ban, csak primitív és objektum referencia, ezért nem is létezhet más fajta paraméterátadás, mint érték szerinti.

    Itt ugyan van egy kis pontatlanság, mikor azt írja ''such as objects'', hiszen objektumot _nem_ lehet átadni paraméterként, de a hétköznapi szóhasználatban elfogadható ez a pongyolaság. (más kérdés, hogy szerintem a Sun weboldalán elfogadhatatlan, de ez most nem fontos)


  • shev7
    veterán

    szerintem meg teljesen jol, es erthetoen van leirva, nem ertem mi a gond? Az ertek es a referencia szerinti atadas kozott az a leglenyegesebb kulonbseg, hogy az eredeti ertek megvaltozik-e. Ha objektumot adsz at, es megvaltoztatod egy parameteret, akkor az eredetinek is valtozni fog. Marpedig ekkor a parameteratadas nem lehet ertek szerinti :)

    kifutottam az idobol:

    ''Ha ''objektumot adunk át paraméterként'' akkor nem is az objektum a paraméter, hanem az objektum referencia, ami már ''by value'' kerül a metódusba.''

    itt a lenyeg, mivel nem az objektum, hanem a referencia kerul atadasra, pont ezert hivjuk referencia szerinti atadasnak...

Új hozzászólás Aktív témák