Hirdetés

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

  • Igen magat az objektumot adja vissza. De Object is, hiszen javaban minden osztaly az Object osztalybol szarmazik. Ugy latom az objektumorientalt programozas alapjai hianyoznak egy kicsit.

    persze hogy mukodtek. Mert a getSource azt az objektumot adja vissza amit te szeretnel. Ennek a toString metodusa kerul meghivasra stb. (De attol hogy ennek a tipusa Babu, attol az meg Object is, hiszen abbol szarmazik. A toStringre nem szol be a fordito, mert olyanja van az Objectnek is)

    DE ez mind futasi idoben tortenik. Forditasnal viszont a fordito nem tud semmit errol az objektumrol, neked kell megmondanod, hogy mi az.

    ja, mostmár valamennyire értem

    mostmár nagyjából megvan az alapja az egész programnak, csak azt nem tudom hogy oldjam meg a kommunikációt két olyan objektum közt amikor egyik számára nem ismert a másik obj.példány neve, mégis meg kéne hívni a metódusát

    konkrétan arról van szó hogy a bábuk tömbjét (class Babu extends JPanel) adatelemként tartalmazó objektum (class Tabla) tartalmazza a tömböt módosító metódusokat is , ezeket kellene meghívni az egyes bábúkra aggatott eseménykezelőkből (MouseListener), csak hát a az eseménykezelő nem tudja a nevét a táblának ami egy másik osztályban, az ablakban kerül példányosításra (Ablak extends JFrame)

    ami leegyszerűsítené a dolgokat hogy a Tabla class implementálná a MouseListentenert is egyben, és így abból egyszerűen meg lehetne hívni a 'Tabla' metódusait
    azonban ez ellentmondana a terveimnek (külön classok) illetve az újrafelhasználhatóságnak

    [link]
    itt találtam megoldásokat, csak ebben az esetben nem olyan egyszerű mert nem az eseményt kiváltó objektum metódusát kell meghívni hanem annak az objektumnak (tábla) a metódusát ami az eseményt kiváltó objektumok tömbjét tartalmazza adattagként ( Babu[][] mezok = new Babu[5][5]; )

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