Objektovo orientované programovanie (OOP) je jeden z najdôležitejších konceptov v programovacom jazyku Java. Aby stať dobrým Java programátorom, je nevyhnutné pochopiť princípy OOP a naučiť sa, ako ich efektívne využívať. V tomto článku vám jednoducho a prakticky vysvetlíme, čo je OOP, aké sú jeho základné princípy a ako ho môžete využiť v praxi.
OOP je programovací prístup, ktorý sa zameriava na objekty namiesto jednoduchých procedúr alebo funkcií. Všetko v OOP sa točí okolo objektov a tried, ktoré predstavujú reálne entity a umožňujú efektívnejšie organizovanie kódu.
OOP je základom moderného softvérového vývoja a prináša množstvo výhod:
Všetko v OOP sa točí okolo tried a objektov. Trieda je šablóna, podľa ktorej sa vytvárajú objekty.
class Auto { String znacka; int rokVyroby; Auto(String znacka, int rokVyroby) { this.znacka = znacka; this.rokVyroby = rokVyroby; } void zobrazInfo() { System.out.println("Auto: " + znacka + ", rok: " + rokVyroby); } } public class Main { public static void main(String[] args) { Auto mojeAuto = new Auto("Toyota", 2020); mojeAuto.zobrazInfo(); } }
Zapuzdrenie znamená, že údaje v triede sú chránené pred priamym prístupom z vonkajšieho prostredia.
class BankovyUcet { private double zostatok; public BankovyUcet(double pociatocnyZostatok) { this.zostatok = pociatocnyZostatok; } public void vlozPeniaze(double suma) { zostatok += suma; } public double getZostatok() { return zostatok; } }
Dedičnosť umožňuje vytvárať nové triedy na základe už existujúcich, čím sa eliminuje opakovanie kódu.
class Zviera { void vydajZvuk() { System.out.println("Zviera vydáva zvuk"); } } class Pes extends Zviera { void stekaj() { System.out.println("Haf! Haf!"); } }
Polymorfizmus umožňuje používať rovnakú metódu rôznymi spôsobmi v rôznych triedach.
class Zviera { void vydajZvuk() { System.out.println("Zviera vydáva zvuk"); } } class Pes extends Zviera { void vydajZvuk() { System.out.println("Haf! Haf!"); } } public class Main { public static void main(String[] args) { Zviera zviera = new Pes(); zviera.vydajZvuk(); // Výstup: Haf! Haf! } }
Nie vždy, ale ak pracujete na väčších projektoch, OOP vám pomôže lepšie organizovať kód.
Tieda je šablóna, objekt je konkrétna inštancia tejto šablóny.
Nie vždy. Procedurálne programovanie môže byť v niektorých prípadoch rýchlejšie, ale OOP ponúka lepšiu štruktúru a údržbu kódu.
Ak máte záujem o prezenčné alebo online školenie programovania v Jave, pozrite si našu ponuku na www.like-it.sk. Naše kurzy vedú skúsení odborníci, ktorí vám pomôžu zvládnuť základy aj pokročilé koncepty programovania.