2-es előadás Flashcards
Objektum definíciója
A valósvilág reprezentációja a programozásban. Van állapota és viselkedése.
Osztály definíciója
Az objektumok absztrakció által egybeszervezett formája. Ezek amolyan sablonok amelyek leírják az objektummok adattagjait és metódusait. Objektum egy osztály példányosítása után jön létre.
Absztrakció fogalma
Objektumok modellezésénél csak a számunkra fontos adattagok és viselkedéseket írjuk le. A többit nem.
Egységbezárás fogalma
Az adattagon végezhető metódusokat egy logikai egységbe zárja.
Metódusok implementációját nem tudjuk.
Adatelemet csak metódussal lehet lekérdezni.
Csak azokat a metódusokat tesszük láthatóvá amelyre az alkalmazás további részének szüksége lesz.
Két részre bontható:
Interface - az oszály objektumai ezáltal kezelhetőek
Implementáció - amit elzárunk.
Mi a különbség az objektum állapot és a viselkedés között?
Állapot: Adattagok, pl.: név, id, szín… Tetszőleges bonyolultságú adatszerkezet, struktúra.
Viselkedés: Metódusok, pl.: jár, beszél, kiált… Az állapot lekérdezésre és beállításra használhatjuk.
Mi azaz osztályattribútum?
Nem osztály példányához tartozik, hanem magához az osztályhoz. Hány példánya van, mekkora a kiterjedése? Ezek nem többszöröződnek.
Mi azaz osztálymetódus?
Így tudjuk lekérdezni az osztályattribútumokat. Magára az osztályra vonatkozik.
Mi az a getter és setter?
Általában nem engeedjük meg, hogy más osztály hozzányúljon egy példányhoz. A getter és setter ezt lehetővé teszi ellenőrzött módon.
Getter: lekérdezés
Setter: beállítás
Mi általánosan az öröklés?
Két osztály közötti kapcsolat.
Létrehozunk egy hierarchiát, amelyben vannak szülő és gyermek osztályok. A leszármazott gyermekosztályok öröklik a szülő attribútumait és metódusait.
Lehetővé teszi az újrafelhasználást.
Mi azaz aggregáció?
Egy speciális típusú asszociáció, ahol egy oszály tartalmazza egy másik objektumait. Más néven egész-rész kapcsolat. Léteznek egymás nélkül is. Hallgató és Kurzus.
Mi a kompozíció?
Az aggregáció erőteljesebb változata. Egy osztály példányosítja és tartalmazza egy másik osztály objektumát. Név és Személy osztályok. Kell léteznie a Név osztálynak a Személy osztály nélkül?
Mi az asszociáció?
Két osztály közötti kapcsolat. Lehet tartalmazás, referencia, vagy együttműködés. Lehetővé teszi az osztályok közötti információ áramlást.
Mi az absztrakt osztály?
Nem lehet példányosítani. Ahoz, hogy használható legyen kell létrehoznunk egy alosztályt is.
Sorolj fel 4 népszerű oop nyelvet!
Java, C++, Python, Ruby