Čo je to abstrakcia v OOP? Java Abstract Class & Metóda

Obsah:

Anonim

Čo je to abstrakcia v OOP?

Abstrakcia je koncept objektovo orientovaného programovania, ktorý „zobrazuje“ iba základné atribúty a „skrýva“ nepotrebné informácie. Hlavným účelom abstrakcie je skrývanie nepotrebných podrobností pred používateľmi. Abstrakcia vyberá údaje z väčšej skupiny, aby používateľovi zobrazila iba relevantné podrobnosti o objekte. Pomáha znižovať zložitosť a úsilie programovania. Je to jeden z najdôležitejších konceptov OOP.

Ak video nie je prístupné, kliknite sem

Poďme študovať abstrakciu v OOPs na príklade:

Predpokladajme, že chcete vytvoriť bankovú aplikáciu a budete požiadaní, aby ste zhromaždili všetky informácie o svojom zákazníkovi. Je pravdepodobné, že s nasledujúcimi informáciami o zákazníkovi prídete

Abstrakcia v Jave

Nie všetky vyššie uvedené informácie sú však potrebné na vytvorenie bankovej aplikácie.

Z tohto fondu teda musíte vybrať iba užitočné informácie pre svoju bankovú aplikáciu. Údaje ako meno, adresa, daňové informácie atď. Majú zmysel pre bankovú aplikáciu, ktorá je v operáciách OOP príkladom Abstrakcie

Pretože sme načítali / odstránili / vybrali informácie o zákazníkoch z väčšieho fondu, proces sa v OOP označuje ako Abstrakcia.

Rovnaké informácie po ich extrakcii však možno použiť pre širokú škálu aplikácií. Rovnaké údaje môžete napríklad použiť pre nemocničnú aplikáciu, aplikáciu pracovného portálu, vládnu databázu atď. S malými alebo žiadnymi úpravami. Preto sa stane vašim kmeňovým údajom. Toto je výhoda Abstrakcie v OOP.

Rozdiel medzi abstrakciou a zapuzdrením

Abstrakcia Zapuzdrenie
Abstrakcia v objektovo orientovanom programovaní rieši problémy na úrovni návrhu. Zapuzdrenie to rieši na úrovni implementácie.
Abstrakcia v programovaní je o skrytí nežiaducich detailov a zobrazení najdôležitejších informácií. Zapuzdrenie znamená spojenie kódu a údajov do jednej jednotky.
Abstrakcia dát v Jave umožňuje zamerať sa na to, čo musí informačný objekt obsahovať Zapuzdrenie znamená skrytie vnútorných detailov alebo mechaniky toho, ako objekt z bezpečnostných dôvodov niečo robí.

Rozdiel medzi abstraktnou triedou a rozhraním

Abstraktná trieda Rozhranie
Abstraktná trieda môže mať abstraktné aj neabstraktné metódy. Rozhranie môže mať iba abstraktné metódy.
Nepodporuje viacnásobné dedičstvo. Podporuje viacnásobné dedičstvo.
Môže poskytnúť implementáciu rozhrania. Nemôže poskytnúť implementáciu abstraktnej triedy.
Abstraktná trieda môže mať chránené a abstraktné verejné metódy. Rozhranie môže mať iba verejné abstraktné metódy.
Abstraktná trieda môže mať konečnú, statickú alebo statickú konečnú premennú s akýmkoľvek špecifikátorom prístupu. Rozhranie môže mať iba verejnú statickú konečnú premennú.

Čo je abstraktná trieda?

Abstraktná trieda je typ triedy v OOP, ktorá deklaruje jednu alebo viac abstraktných metód. Tieto triedy môžu mať abstraktné aj konkrétne metódy. Normálna trieda nemôže mať abstraktné metódy. Abstraktná trieda je trieda, ktorá obsahuje aspoň jednu abstraktnú metódu.

Čo sú to abstraktné metódy?

Abstraktná metóda je metóda, ktorá má iba definíciu metódy, ale neobsahuje implementáciu. Metóda bez tela je známa ako abstraktná metóda. Musí byť deklarované v abstraktnej triede. Abstraktná metóda nebude nikdy konečná, pretože abstraktná trieda musí implementovať všetky abstraktné metódy.

Výhody abstrakcie

  • Hlavnou výhodou použitia Abstrakcie v programovaní je, že vám umožňuje zoskupiť niekoľko príbuzných tried ako súrodencov.
  • Abstrakcia v objektovo orientovanom programovaní pomáha znižovať zložitosť procesu navrhovania a implementácie softvéru.

Kedy použiť abstraktné metódy a abstraktnú triedu?

Abstraktné metódy sa väčšinou deklarujú tam, kde dve alebo viac podtried tiež robí to isté rôznymi spôsobmi prostredníctvom rôznych implementácií. Tiež rozširuje tú istú abstraktnú triedu a ponúka rôzne implementácie abstraktných metód.

Abstraktné triedy pomáhajú popisovať všeobecné typy správania a hierarchiu tried objektovo orientovaného programovania. Opisuje tiež podtriedy, ktoré ponúkajú implementačné podrobnosti abstraktnej triedy.

Zhrnutie:

  • Abstrakcia v programovaní je proces výberu dôležitých súborov údajov pre objekt vo vašom softvéri a vynechanie tých nevýznamných.
  • Po modelovaní objektu pomocou Data Abstraction v Jave sa dá rovnaká množina údajov použiť v rôznych aplikáciách.