Rozdíl mezi abstraktní třídou a rozhraním

Při programování se používají pojmy abstraktní třídy a rozhraní. Jaké jsou jejich vlastnosti?

Obsah článku

  • Jaká jsou specifika abstraktní třídy v programování?
  • Co je rozhraní??
  • Porovnání
  • Tabulka

Jaká jsou specifika abstraktní třídy v programování?

Mezi hlavní rysy abstraktní třída - dostupnost implementace. Kromě toho v něm může být přítomna jedna nebo několik jejích metod. Abstraktní třída má vlastnosti, které mají modifikátory přístupu. Dotčená kategorie údajů navíc zahrnuje:

  1. použití metody rozšíření;
  2. popis konstruktéra;
  3. použití různých typů dat - zejména statických nebo konstant;
  4. nezávislost implementace zděděné abstraktní třídy od rodiče.
na obsah ↑

Co je rozhraní??

Rozhraní, zase neobsahuje implementaci. Obsahuje popis ve své nejčistší podobě - ​​jako soubor metod, které mají být implementovány do určité třídy, prostřednictvím které je implementováno rozhraní.

Dotčená kategorie údajů také zahrnuje:

  1. přítomnost pouze těch konstant, které jsou klasifikovány jako veřejně dostupné;
  2. použití metody implementace;
  3. reprodukce všech metod rozhraní v procesu jeho implementace.

Rozhraní neposkytuje popis konstruktoru.

Reklama

na obsah ↑

Porovnání

Je zřejmé, že existuje více než jeden rozdíl mezi abstraktní třídou a rozhraním. Rozdíl mezi nimi lze sledovat v různých aspektech. Nejzřetelněji je lze vidět při porovnání abstraktní třídy a rozhraní podle následujících hlavních kritérií:

  • dědičnost;
  • implementace;
  • použití konstruktoru.

Malá tabulka nám pomůže ukázat, jaký rozdíl mezi abstraktní třídou a rozhraním lze vysledovat ve vztahu k označeným kritériím..

na obsah ↑

Tabulka

Abstraktní třídaRozhraní
Pouze jedna abstraktní třída je zděděna jinou třídou.Jakákoli třída může implementovat několik rozhraní
Umožňuje implementaci metodPředpokládá pouze popis metod
Umožňuje vytvoření konstruktoruNezahrnuje konstruktéry