Aké je použitie abstraktnej metódy v Jave?



Tento článok o abstraktných metódach v Jave vám pomôže naučiť sa, ako dosiahnuť abstrakciu pri používaní programovacích abstraktných tried a metód v Jave

V ktoromkoľvek programovacom jazyku abstrakcia znamená skrývanie nepodstatných detailov pred používateľom, aby sa sústredili iba na nevyhnutné detaily a zvýšili tak efektivitu a znížili tak zložitosť. V Jave sa abstrakcia dosahuje pomocouabstraktné triedy a metódy. Poďme sa dozvedieť viac o abstraktnej metóde v .

V tomto článku sa diskutuje o týchto témach:





Čo je abstraktná trieda?

V hocijakom , trieda deklarovaná kľúčovým slovom abstraktné je známa ako abstraktná trieda. An abstraktná trieda zachytáva spoločné vlastnosti podtried a môže alebo nemusí obsahovať žiadne abstraktná metóda . Nemožno ho vytvoriť inštanciou, ale je možné ho použiť iba ako nadtriedu v jeho podtriedach.

príklady tried a objektov pythonu

Ďalej sú uvedené niektoré kľúčové body týkajúce sa abstraktnej triedy:



  • Abstraktná trieda môže mať konštruktéri a statické metódy
  • Môže mať konečné metódy , nútia podtriedu, aby nezmenila telo metódy
  • Abstraktnú triedu môžete použiť jej dedením z inej triedy a potom v nej poskytnúť implementácie abstraktných metód
  • Ak abstraktná trieda nemá implementáciu žiadnej metódy, je vždy lepšie ju použiť rozhranie

Trieda vyhlásená za abstrakt môže alebo nemusí obsahovať abstraktné metódy. Čo je to však abstraktná metóda?

Čo je abstraktná metóda?

Metóda deklarovaná bez tela (bez implementácie)v rámci abstraktnej triedy je abstraktná metóda. Inými slovami, ak chcete a trieda Ak chcete obsahovať konkrétnu metódu, ale chcete, aby bola skutočná implementácia tejto metódy určená podradenými triedami, môžete metódu v nadradenej triede vyhlásiť za abstraktnú.

prepojený zoznam v programe c

Takto vyzerá abstraktná metóda v Jave:



abstraktné verejné prázdne stanovište ()

Kľúčové vlastnosti abstraktnej metódy

Ďalej sú uvedené kľúčové vlastnosti abstraktnej metódy:

  • Abstraktné metódy nemajú implementáciu (telo), majú iba podpis metódy, ako je uvedené v príklade vyššie
  • Ak má trieda abstraktnú metódu, mala by sa vyhlásiť za abstraktnú, naopak to nie je pravda
  • Namiesto zložených zátvoriek bude mať abstraktná metóda na konci bodkočiarku ()
  • Ak bežná trieda rozširuje abstraktnú triedu, potom musí trieda implementovať všetky abstraktné metódy tejto triedy, alebo musí byť tiež vyhlásená za abstraktnú

Príklad programu: Abstraktná metóda v Jave

Pozrite sa na ukážkový program, aby ste pochopili, ako sa abstrakcia dosahuje pomocou abstraktných tried a abstraktných metód. Rozhliadnite sa.

balíček MyPackage // abstraktná trieda abstraktná trieda Zviera {String AnimalName = '' Zviera (Názov reťazca) {this.AnimalName = name} // deklarovať neabstraktné metódy // má predvolenú implementáciu public void BasicInfo (Podrobnosti reťazca) {Systém. out.println (this.AnimalName + '' + podrobnosti)} // abstraktné metódy, ktoré budú // implementované jeho podtriedami abstraktné verejné neplatné prostredie () abstraktné verejné neplatné dýchanie ()} trieda Pozemné rozširuje Zviera {// konštruktér Terrestrial (názov reťazca) {super (názov)} @Override verejné neplatné prostredie () {System.out.println ('nechať na súši a')} @Override verejné neplatné dýchanie () {System.out.println ('respire) cez pľúca alebo priedušnicu. ')}} trieda Aquatic rozširuje Animal {// konštruktor Aquatic (názov reťazca) {super (názov)} @Override public void habitat () {System.out.println (' Leave in water and ') } @Override public void respiration () {System.out.println ('dýchaj cez žiabre alebo ich kožu.')}} Trieda AbstractClassDemo {verejné statické voi d main (String [] args) {// vytvorenie objektu terestriálnej triedy // a použitie odkazu na zvieraciu triedu. Zviera object1 = new Terrestrial ('Humans') object1.BasicInfo ('are terrestrial beings, they') object1.habitat () object1.respiration () System.out.println ('') // creating the Objects of circle class Animal object2 = new Aquatic ('Fishes') object2.BasicInfo ('are aqautic beings, they') object2.habitat () object2.respiration ()}}

Výkon:

Metóda Základné informácie () je a ktorý používajú obaja Pozemské a Vodné triedy. Metódy biotop () a dýchanie() sú abstraktné metódy a nemajú žiadnu implementáciu, iba podpis. Pozemské a Vodné triedy musia zabezpečiť vlastnú implementáciu oboch metód. Upozorňujeme tiež, že obidve metódy začínajú kľúčovým slovom abstraktné . V tejto chvíli by vás mohlo zaujímať, ako na tom je abstraktná trieda odlišné od rozhranie .

Rozhranie v Jave

Ďalším spôsobom dosiahnutia abstrakcia v Jave je pomocou rozhrania . Rozhranie je súborom abstraktných metód, nemá nič konkrétne , na rozdiel od abstraktnej triedy. Ale na rozdiel od abstraktnej triedy, rozhranie poskytuje úplnú abstrakciu v Jave. Môže mať metódy aj premenné rovnako ako trieda. Metódy deklarované v rozhraní sú však predvolene abstraktné.

Abstraktné triedy a rozhrania sú dva hlavné stavebné prvkyz . Aj keď sa obe primárne používajú na abstrakciu, navzájom sa veľmi líšia a nemožno ich zameniť.

Týmto sa dostávame na koniec tohto článku „Abstraktná metóda v Jave“. Pokryl som jednu z najčastejšie kladených otázok , čo je abstraktná trieda v Jave.

previesť dvojité na celé číslo v jave

Určite cvičte čo najviac a obráťte sa na svoje skúsenosti.

Pozrite sa na autor: Edureka, dôveryhodná online vzdelávacia spoločnosť so sieťou viac ako 250 000 spokojných študentov rozmiestnených po celom svete. Máte na nás otázku? Uveďte to v sekcii komentárov tejto „Abstraktnej metódy v Jave“. článok a my sa vám ozveme čo najskôr.