Rozdiel medzi abstraktnou triedou a rozhraním

Autor: Laura McKinney
Dátum Stvorenia: 3 Apríl 2021
Dátum Aktualizácie: 2 V Júli 2024
Anonim
Rozdiel medzi abstraktnou triedou a rozhraním - Vzdelanie
Rozdiel medzi abstraktnou triedou a rozhraním - Vzdelanie

Obsah

Hlavný rozdiel

Hlavný rozdiel medzi abstraktnou triedou a rozhraním spočíva v tom, že postupy rozhrania Java sú v podstate abstraktné a nemôžu mať aplikácie. Takže všeobecne povedané, rozhranie je vlastne zmluva a keď hovoríme o rozhraní, platí, že metódy nemajú telo, je to iba vzor. Kým abstraktné triedy sú v podstate triedy, ktoré sa používajú draho. Abstraktné triedy a rozhranie je úplne iný koncept, sú to dve rôzne veci, ale niekedy je ich implementácia dosť podobná.


Čo je to abstraktná trieda?

Programátor neimplikuje celkom abstraktnú triedu. Abstraktná trieda môže mať jednu alebo viac abstraktných metód. Sú užitočné pre modelovanie tried alebo zoskupení tried a zatiaľ čo sa to deje, programátor získa predstavu o tom, čo sa musí vytvoriť, keď uvidia požiadavky. Na abstraktnú triedu sa nemožno spoľahnúť úplne, pretože jej chýbajú niektoré časti. Hlavným bodom tohto argumentu je, že abstraktná trieda je striktne objektovo orientovaná, hoci má nadpis metódy, ale nemá telo. Keď hovoríme o abstraktných triedach, existuje silné spojenie medzi dvoma triedami, pretože tieto triedy majú tendenciu vzájomne sa získavať alebo dediť.

Čo je rozhranie?

Keď hovoríme o rozhraní, potom naopak nie je vzťah alebo komunikácia medzi samotným rozhraním a triedou implikujúcou rozhranie taký silný ako v abstraktných triedach. Trieda Java môže implementovať veľa rozhraní, ale môže zdediť jednu abstraktnú triedu. To znamená, že keď chcete naznačiť veľa interakcií naraz, potom je rozhranie vašou vecou. Okrem tohto celého scenára, aj keď nechcete, aby sa API chvíľu zmenilo, potom je pre vás najlepšia voľba rozhrania. Rozhranie je vlastne zmluva medzi dvoma rôznymi objektmi. Aby som to skrátil, rozhranie sa točí okolo funkčnosti.


Kľúčové rozdiely

  1. Abstraktná trieda je objektovo orientovaná, zatiaľ čo rozhranie je funkčne orientované.
  2. Ak chcete, aby API chvíľu zostalo konštantné, vyberte rozhranie nad abstraktnou triedou.
  3. Viacnásobné dedičstvá by sa mohli získať zavedením viacerých rozhraní. V abstraktnej triede nemôžete získať viac dedičstiev.
  4. Ak máte vibráciu, ktorú by ste v budúcnosti mali potrebovať pri pridávaní metód, potom sa zvolí abstraktná trieda, nie rozhranie.
  5. Abstraktná trieda poskytuje spoločnú aplikáciu základnej triedy, ale nič podobné sa nedeje v rozhraní.
  6. V rozhraní sú všetky metódy, ktoré implementujete, verejné, ale v abstraktnej triede môžete použiť aj niektoré neverejné metódy.
  7. Konštruktori nie sú v rozhraní, ale vyskytujú sa v abstraktnej triede.
  8. Úplný člen abstraktnej triedy by mohol byť statický, ale nie rozhranie.

Ľudia chcú tráviť voj život na miete, na ktorom majú všetky možnoti a zariadenia, z ktorých môže mať úžitok, a vďaka tejto realite a mieto, v ktorom bývate, táv...

Rozdiel medzi meiózou I a meiózou II

Monica Porter

V Júli 2024

Meióza je typ bunkového delenia, ku ktorému dochádza iba raz za život eukaryota. Tento proce je nevyhnutný pre eukaryotické organizmy, pretože u týchto gamét al...

Články Pre Vás