Ключові відмінності: Існують два основних типи класів: абстрактний клас і клас бетону. Основна відмінність цих двох виникає з рівня реалізації їх методологічних функціональних можливостей. Конкретні класи є регулярними класами, де всі методи повністю реалізовані. Анотація класу саме те, що наводить її назва. Саме там функції не визначені, тобто вони абстрактні.

Існує два основних типи класів: абстрактний клас і клас бетону. Основна відмінність цих двох виникає з рівня реалізації їх методологічних функціональних можливостей. Конкретні класи є регулярними класами, де всі методи повністю реалізовані. Анотація класу саме те, що наводить її назва. Саме там функції не визначені, тобто вони абстрактні. Це базовий клас. Як тільки визначено абстрактний клас, він перестає бути абстрактним і стає конкретним класом. Конкретний клас - це те, де реалізовані функції для членів. Конкретний клас походить від базового класу, тобто абстрактного класу.

Більш простий спосіб подумати про це - розглянути приклад. Подумайте про спорт, це об'єкт, але той, який цього не робить, не визначено. Технічно не існує такого поняття, як спорт. Вона існує лише як категоризація для інших об'єктів. Ці об'єкти, такі як футбол, бейсбол, баскетбол, хокей і т.д., є визначеними об'єктами, які можна класифікувати і реалізувати під спортом. Отже, спорт - абстрактний клас, а футбол, бейсбол, баскетбол, хокей - конкретні заняття.
Порівняння між абстрактним класом і класом бетону:
Анотація класу | Клас бетону | |
Тип | Базовий клас | Клас за умовчанням |
Методи | Може містити частково реалізовані методи | Всі методи повністю реалізовані |
Функції | Деякі або всі оголошені функції є суто віртуальними | Немає чисто віртуальних функцій |
Instantiation | Неможливо створити примірник | Може бути створений |
Зображення надано: tutorials.jenkov.com, stackoverflow.com