Разликата между абстрактен клас и интерфейс

В програмирането се използват концепциите за абстрактен клас и интерфейс. Какви са техните характеристики?

Съдържание на статията

  • Какви са спецификите на абстрактния клас в програмирането?
  • Какво е интерфейс??
  • сравнение
  • маса

Какви са спецификите на абстрактния клас в програмирането?

Сред основните характеристики абстрактен клас - наличност на изпълнение. Освен това в него могат да присъстват един или няколко от неговите методи. Абстрактен клас има свойства, които имат модификатори за достъп. Освен това въпросната категория данни включва:

  1. прилагане на метод за разширяване;
  2. описание на конструктора;
  3. използването на различни видове данни - по-специално статични или константи;
  4. независимост на прилагането на наследствения абстрактен клас от родителя.
към съдържание ↑

Какво е интерфейс??

интерфейс, от своя страна не съдържа изпълнение. Той съдържа описание в най-чистия му вид - като набор от методи, които трябва да бъдат реализирани в определен клас, чрез който се реализира интерфейс.

Въпросната категория данни включва също:

  1. наличието само на онези константи, които са класифицирани като обществено достъпни;
  2. прилагане на метода на машината;
  3. възпроизвеждане на всички интерфейсни методи в процеса на неговото внедряване.

Обърнете внимание, че интерфейсът не дава описание на конструктора.

реклама

към съдържание ↑

сравнение

Очевидно има една разлика между абстрактния клас и интерфейса. Разликата между тях може да се проследи в различни аспекти. Те могат да се видят най-ясно, когато сравняваме абстрактния клас и интерфейс според следните основни критерии:

  • наследяване;
  • изпълнение;
  • използване на конструктора.

Малка таблица ще ни помогне да покажем каква може да се проследи разликата между абстрактния клас и интерфейса спрямо маркираните критерии..

към съдържание ↑

маса

Абстрактен класинтерфейс
Само един абстрактен клас се наследява от друг клас.Няколко класа могат да бъдат реализирани от всеки клас
Позволява прилагането на методиПредполага само описание на методите
Позволява създаване на конструкторНе включва конструктори