Object Pascal/Delphi OOP: Mire szolgálnak az absztrakt metódusok (abstract) és osztálymetódusok (class procedure/function)?
Absztrakt metódusok: A könyvem (Programozzunk Delphi7 rendszerben!) annyit ír róla h "teljes" legyen az osztály, most ez mit akar jelenteni?
Osztálymetódusok: Azt írja nem magán az osztályon hanem az objektumon (a könyv azt írja objektumnak az osztály példányát nevezi, de azért hol így hol úgy írja...) végez módosításokat,? A példakód meg nem igazán sokatmondó.
Köszönöm előre is, Üdv
Van egy tulajdonság, ami az osztály minden objektumára ugyanaz. Nem lehet konstansként bedrótozni, mert elvárjuk, hogy bizonyos esetekben megváltoztathassuk. Azt akarjuk, hogy egyszerre változzon minden példányban.
Az osztálymetódus hasonló, minden példányra érvényes változtatásokat hoz létre.
Az absztrakt metódus arra jó, hogy ha két gyermek osztály megvalósít egy metódust, akkor ketten különbözőféleképpen járhassanak el. Például elvárjuk, hogy egy Alakzat osztálybeli példánynak ki lehessen számolni a kerületét és a területét, de van egy Téglalap és egy Kör osztály. Ilyenkor jó, ha csak deklaráljuk ezt a metódust az Alakzat osztályban, ezzel elkerüljük a felülírást és annak összes kellemetlen következményét. A tényleges megvalósítás a Téglalap és a Kör osztályra marad.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!