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