"Здравей, Амиго! Билаабо ще ти каже разликите между абстрактен клас и интерфейс. Има няколко."
Абстрактен клас | Интерфейс |
---|---|
Наследство | |
Един абстрактен клас може да наследи само един клас , но може да наследи произволен брой интерфейси . | Един интерфейс не може да наследява класове , но може да наследява произволен брой интерфейси . |
Абстрактни методи | |
Абстрактен клас може да съдържа абстрактни методи . Но може изобщо да ги няма . | Всички нестатични и нестандартни методи на интерфейса са абстрактни , т.е. нямат реализация. Един интерфейс не може да има ниHowви методи . |
Методи с реализация | |
Абстрактен клас може да съдържа методи с имплементация . | Интерфейсът може да има методи по подразбиране . |
Данни | |
Без ограничения. | Интерфейсът съдържа само публични окончателни статични данни. |
Създаване на обект | |
Не можете да създадете екземпляр на абстрактен клас. | Не можете да създадете екземпляр на интерфейс. |
— Това е моето разбиране. Кратко и по същество.
— Благодаря, Амиго.
GO TO FULL VERSION