Hirdetés

Keresés

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

  • Lortech

    addikt

    válasz Revolit #1951 üzenetére

    de általánosságban is érdekelne a kérdés: ha létrehozok egy objektumot, akkor annak az objektumnak minden fv-ét el tudom érni (hacsak nem private...), de mi van, ha én a létrehozott objektumból akarom meghívni a létrehozó objektum fügvényét? azt hogyan csinálom? Tehát kommunikáljon mindkét irányba.

    Szóval alapvetően ilyen szempontból megkülönböztetünk static - osztályszintű és példányszintű függvényt.
    Osztályszintű függvényt az osztály nevén keresztül tudsz meghívni - osztályszintű fgv definícióban nem hivatkozhatsz az osztály példányszintű mezőire illetve fgv-eire, mert azok az osztály egy konkrét előfordulásához, példányához kötődnek.
    Példányszintű függvényt az osztály egy adott példányánának referenciáján keresztül hívhatsz meg.
    Konkrétan a kérdésedre válaszolva, ahhoz szükséged van a "létrehozott" objektumban a létrehozó objektum egy példányára, ill. annak referenciájára. Ezt biztosíthatod úgy, hogy átadod a létrehozott objektumnak paraméterként (pl. konstruktorban), vagy az adott függvénynek, ahonnan hívni akarod a létrehozott objektumot. Bizonyos esetekben az is megoldás lehet, ha a "létrehozott" objektumban példányosítasz a létrehozó objektum típusából - ha nem lényeges az _eredeti_ objektum belső állapota (ált. ezek osztályszintű fgv-ek, de nem feltétlenül). Akár a létrehozott objektum egy mezője is lehet ez a példány, tarthatod ott is a referenciáját.
    A legfontosabb, hogy mielőtt netbeansben egy GUI-t összekattintgatunk, az alapokkal tisztában legyünk.. mert egyszerűnek látszik a felhasználóbarát GUI builder, de ettől még tudni kell java-ban programozni, ha faéknél bonyolultabb programot csinálsz..

  • eziskamu

    addikt

    válasz Revolit #1951 üzenetére

    Van rá egy nagyon amatör javaslatom. Legyen egy külön osztály, aminek mondjuk egy statikus változója tartalmazza az objektumot (csak legyen időben értékadás :) ), de esetleg a már létrehozáskor is átadhatod magát a hívó objektumot egy új paraméterként (a hívott objektum konstruktorának paraméterlistáját kibővítve).

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