Jak název napovídá, objektově orientované programování neboli OOPs označuje jazyky, které v programování používají objekty. Objektově orientované programování si klade za cíl implementovat do programování entity reálného světa, jako je dědičnost, skrývání, polymorfismus atd. Hlavním cílem OOP je spojit data a funkce, které s nimi pracují, tak, aby k těmto datům neměla přístup žádná jiná část kódu kromě této funkce.
OOPs koncepty:
- Třída
- Objekty
- Abstrakce dat
- Zapouzdření
- Dědictví
- Polymorfismus
- Dynamická vazba
- Předávání zpráv
1. třída:
Třída je uživatelsky definovaný datový typ. Skládá se z datových členů a členských funkcí, ke kterým lze přistupovat a používat je vytvořením instance dané třídy. Představuje soubor vlastností nebo metod, které jsou společné všem objektům jednoho typu. Třída je jako plán pro objekt.
Například: Zvažte třídu automobilů. Může existovat mnoho aut s různými jmény a značkami, ale všechna budou sdílet některé společné vlastnosti, jako například všechna budou mít 4 kola, rychlostní limit, dojezd atd. Takže tady je auto třída a kola, rychlostní limity, ujeté kilometry jsou jejich vlastnosti.
2. Objekt:
datumový řetězec java
Je to základní jednotka objektově orientovaného programování a představuje entity reálného života. Objekt je instancí třídy. Když je definována třída, není alokována žádná paměť, ale když je vytvořena instance (tj. je vytvořen objekt), paměť je alokována. Objekt má identitu, stav a chování. Každý objekt obsahuje data a kód pro manipulaci s daty. Objekty mohou interagovat, aniž by musely znát podrobnosti o svých datech nebo kódu, stačí znát typ přijaté zprávy a typ odpovědi vrácené objekty.
Například pes je skutečný objekt, který má některé vlastnosti, jako je barva, plemeno, štěkání, spánek a jídlo.
java převést řetězec na int

Objekt
3. Abstrakce dat:
Abstrakce dat je jednou z nejdůležitějších a nejdůležitějších vlastností objektově orientovaného programování. Abstrakce dat se týká poskytování pouze nezbytných informací o datech vnějšímu světu, skrývání podrobností o pozadí nebo implementace. Vezměme si příklad ze skutečného života muže, který řídí auto. Muž pouze ví, že sešlápnutím plynu se zvýší rychlost auta nebo sešlápnutím brzd se auto zastaví, ale neví, jak se při sešlápnutí plynu zvyšuje rychlost, neví o vnitřním mechanismu auta nebo implementaci plynu, brzd atd. v autě. Toto je abstrakce.
4. Zapouzdření:
Zapouzdření je definováno jako zabalení dat do jedné jednotky. Je to mechanismus, který spojuje kód a data, s nimiž manipuluje. V Encapsulation jsou proměnné nebo data třídy skryté před jakoukoli jinou třídou a lze k nim přistupovat pouze prostřednictvím jakékoli členské funkce jejich třídy, ve které jsou deklarovány. Stejně jako v zapouzdření jsou data ve třídě skryta před ostatními třídami, takže je také známá jako skrývání dat .
Vezměme si skutečný příklad zapouzdření, ve společnosti existují různé sekce, jako je účetní sekce, finanční sekce, prodejní sekce atd. Finanční sekce zpracovává všechny finanční transakce a vede záznamy o všech datech souvisejících s financemi. Obdobně úsek prodeje zajišťuje veškeré činnosti spojené s prodejem a vede evidenci všech prodejů. Nyní může nastat situace, kdy z nějakého důvodu potřebuje úředník z finančního úseku všechna data o tržbách v konkrétním měsíci. V tomto případě mu není umožněn přímý přístup k údajům prodejní sekce. Nejprve bude muset kontaktovat jiného pracovníka v prodejní sekci a poté jej požádat o poskytnutí konkrétních údajů. To je to, co je zapouzdření. Zde jsou data prodejní sekce a zaměstnanci, kteří s nimi mohou manipulovat, zabalena pod jednotný název prodejní sekce.
10 ze 40
5. Dědičnost:
Dědičnost je důležitým pilířem OOP (Object-Oriented Programming). Schopnost třídy odvozovat vlastnosti a charakteristiky z jiné třídy se nazývá dědičnost. Když píšeme třídu, dědíme vlastnosti z jiných tříd. Když tedy vytvoříme třídu, nemusíme znovu a znovu psát všechny vlastnosti a funkce, protože je lze zdědit od jiné třídy, která ji vlastní. Dědičnost umožňuje uživateli znovu použít kód, kdykoli je to možné, a snížit jeho redundanci.
6. Polymorfismus:
Slovo polymorfismus znamená mít mnoho podob. Jednoduše řečeno, můžeme polymorfismus definovat jako schopnost zprávy zobrazovat se ve více než jedné formě. Například osoba může mít současně různé vlastnosti. Jako muž je zároveň otcem, manželem, zaměstnancem. Stejná osoba se tedy v různých situacích chová jinak. Tomu se říká polymorfismus.
linux přejmenovat adresář
7. Dynamická vazba:
V dynamické vazbě se o kódu, který se má provést v reakci na volání funkce, rozhoduje za běhu. Dynamická vazba znamená, že kód spojený s daným voláním procedury není znám až do doby volání v době běhu. Dynamická vazba metody Jednou z hlavních výhod dědičnosti je, že některá odvozená třída D má všechny členy své základní třídy B. Jakmile D neskrývá žádný z veřejných členů B, pak objekt D může představovat B v jakémkoli kontextu. kde by se dalo použít B. Tato vlastnost je známá jako podtypový polymorfismus.
8. Odeslání zprávy:
Je to forma komunikace používaná v objektově orientovaném programování i paralelním programování. Objekty spolu komunikují tak, že si navzájem posílají a přijímají informace. Zpráva pro objekt je požadavek na provedení procedury, a proto vyvolá funkci v přijímajícím objektu, která generuje požadované výsledky. Předávání zpráv zahrnuje zadání názvu objektu, názvu funkce a informací, které mají být odeslány.
Proč potřebujeme objektově orientované programování
- Aby byl vývoj a údržba projektů jednodušší.
- Poskytnout funkci skrývání dat, která je dobrá z hlediska bezpečnosti.
- Problémy reálného světa můžeme řešit, pokud používáme objektově orientované programování.
- Zajišťuje opětovnou použitelnost kódu.
- Umožňuje nám psát obecný kód: který bude pracovat s řadou dat, takže nemusíme znovu a znovu psát základní věci.