Objektovo orientované programovanie (OOP) je spôsob programovania, ktorý využíva objekty na organizáciu a manipuláciu s údajmi a funkciami. OOP umožňuje definovať vlastné objektové triedy, ktoré kombinujú dáta a metódy pre prácu s týmito dátami.
- OOP využíva objekty ako základný stavebný kameň programovania.
- Objekty kombinujú údaje a funkcie, ktoré s nimi pracujú.
- Definovanie objektových tried je podobné definovaniu štruktúr, avšak OOP pridáva metódy pre manipuláciu s údajmi.
- Metódy sú funkcie definované v triede, ktoré operujú na jej atribútoch.
Čo je objektovo orientované informatika/programovanie-pokus-o-vypracovanie-poziadaviek-na-skusku-z-predmetu/" class="wiki-link" title="Viac o: programovanie">programovanie?
Objektovo orientované programovanie je spôsob programovania, pri ktorom sa navrhujú a používajú objekty.
S objektmi sme pracovali od začiatku - používali sme objekty:
- Form (formulár), Button (tlačidlo), Image (obrázok), Canvas (grafická plocha) sú objekty;
- pre prácu so súbormi - tzv. súborové premenné typu ifstream, ofstream.
V OOP sa stretneme s pojmami:
- objekt ... spojenie údajov a funkcií, ktoré s údajmi pracujú (pre porovnanie: v štruktúrach sme spojili premenné, ktoré navzájom súviseli - v objektoch navyše k týmto premenným "pribalíme" funkcie):
- objektová sloh/domovska-trieda/" class="wiki-link" title="Viac o: trieda">trieda (anglicky class) ... v OOP sa nehovorí, že "premenná f je typu ifstream", ale povie sa, že "objekt f je z triedy ifstream":
Dnes sa naučíme definovať vlastné objektové triedy a pochopíme prvé jednoduché mechanizmy OOP.
Prvá trieda
Navrhneme vlastnú objektovú triedu - TZlomok. Definovanie tried pripomína definovanie štruktúr (popritom ukazujeme, akoby vyzerala neobjektová verzia):
objektovo:
klasicky - neobjektovo:
class TZlomok {
public:
int C, M; void Nastav(int nC, int nM); void Vypis(int X, int Y); float Hodnota(); };
struct TZlomok { int C, M; };
TZlomok Zlomok(int nC, int nM); void Vypis(int X, int Y, TZlomok Z); float Hodnota(TZlomok Z);
Zadefinovali sme nový typ TZlomok, ktorý obsahuje dve položky (v literatúre aj - atribúty objektu, stavové premenné, po anglicky: fields): C - čitateľ zlomku M - menovateľ zlomku
Všimnime si, že v definícii triedy TZlomok sú navyše uvedené hlavičky funkcií, ktoré budú s údajmi objektu pracovať: Nastav - nastaví hodnotu zlomku; Vypis - vypíše zlomok na obrazovku; Hodnota - vráti hodnotu zlomku ako reálne číslo.
V OOP sa tieto funkcie nazývajú metódy (nie funkcia Výpis, metoda/" class="wiki-link" title="Viac o: genialita">genialita-ale-metoda/" class="wiki-link" title="Viac o: ale metóda">ale metóda Výpis - v literatúre bývajú označované aj ako členské funkcie, po anglicky member functions). Definícii triedy zvykne obsahovať iba hlavičky metód (názov metódy a parametre) - telá metód sa programujú mimo definície triedy.
Objekty používame podobne, ako štruktúrované premenné:
TZlomok z, n; // z, n sú objekty triedy TZlomok z.C=1; z.M=10; n.C=0; n.M=1; z n
C: 1
M: 10
Nastav Vypis Hodnota
C:
🤔 Najčastejšie otázky k téme
Čo je objektovo orientované programovanie?
Objektovo orientované programovanie je spôsob programovania, ktorý sa zameriava na návrh a používanie objektov, ktoré kombinujú údaje a funkcie.
Aké sú hlavné komponenty OOP?
Hlavné komponenty OOP sú objekty, triedy a metódy. Triedy definujú štruktúru objektov a metódy sú funkcie, ktoré operujú na atribútoch týchto objektov.
Ako sa definuje vlastná objektová trieda?
Vlastná objektová trieda sa definuje pomocou kľúčového slova 'class', nasledovaného názvom triedy a jej atribútmi a metódami.