Différence entre la classe abstraite et la classe concrète

Différence clé: Il existe deux principaux types de classes: classe abstraite et classe concrète. La principale différence entre les deux provient du niveau de mise en œuvre des fonctionnalités de leurs méthodes. Les classes concrètes sont des classes régulières, où toutes les méthodes sont complètement implémentées. Une classe abstraite est exactement ce que son nom suggère. C'est là où les fonctions ne sont pas définies, c'est-à-dire qu'elles sont abstraites.

Les ordinateurs peuvent être assez déroutants, c'est-à-dire avant d'ajouter la programmation informatique, les langages de programmation et les protocoles. Sans oublier le fait qu'il existe de nombreux langages de programmation très différents les uns des autres et qui ont leur propre ensemble de protocoles. Par exemple, les langages de programmation orientée objet (OOP) tels que Java et C # sont très différents des langages de programmation procéduraux et des langages de programmation structurels. Les langages POO sont basés sur les classes, tandis que les autres sont basés sur la logique. Ces langages POO réalisent les concepts orientés objet tels que l'encapsulation, l'héritage et le polymorphisme grâce à l'utilisation de classes.

Il existe deux principaux types de classes: classe abstraite et classe concrète. La principale différence entre les deux provient du niveau de mise en œuvre des fonctionnalités de leurs méthodes. Les classes concrètes sont des classes régulières, où toutes les méthodes sont complètement implémentées. Une classe abstraite est exactement ce que son nom suggère. C'est là où les fonctions ne sont pas définies, c'est-à-dire qu'elles sont abstraites. C'est la classe de base. Une fois qu'une classe abstraite est définie, elle cesse d'être abstraite et devient une classe concrète. Une classe concrète est celle où les implémentations des fonctions membres sont fournies. Une classe concrète est dérivée de la classe de base, c'est-à-dire une classe abstraite.

Une classe abstraite n'est constituée que de méthodes abstraites. Une méthode abstraite ne contient que des définitions, mais aucune implémentation. Les implémentations sont fournies dans la classe concrete, après quoi les méthodes peuvent être implémentées. Une classe abstraite ne peut jamais être finale car elle n’a pas de fonctions définies. Par conséquent, chaque programme doit avoir une classe concrète, afin de lui indiquer quelles fonctions implémenter et comment.

Un moyen plus facile d’y réfléchir serait de prendre un exemple. Pensez au sport, c'est un objet, mais celui qui ne le fait pas n'est pas défini. Techniquement, le sport n'existe pas. Il existe uniquement en tant que catégorisation pour d'autres objets. Ces objets, tels que le football, le baseball, le basketball, le hockey, etc., sont des objets définis qui peuvent être classés et mis en œuvre dans des sports. Le sport est donc la classe abstraite, tandis que le football, le baseball, le basketball et le hockey sont des cours concrets.

Comparaison entre la classe abstraite et la classe concrète:

Classe abstraite

Classe de béton

Type

Classe de base

Classe par défaut

Les méthodes

Peut contenir des méthodes partiellement implémentées

Toutes les méthodes sont complètement implémentées

Les fonctions

Certaines ou toutes les fonctions déclarées sont purement virtuelles

Pas de fonctions purement virtuelles

Instanciation

Ne peut pas être instancié

Peut être instancié

Courtoisie d'image: tutorials.jenkov.com, stackoverflow.com

Recommandé

Articles Connexes

  • différence entre: Différence entre chasse et braconnage

    Différence entre chasse et braconnage

    Principale différence: la chasse est un sport qui consiste à traquer et à tuer des animaux sauvages. Ces animaux sont ensuite utilisés soit comme nourriture, soit plus communément comme trophée ou pour le commerce. Le braconnage est essentiellement une chasse, quand on n'a pas le droit de le faire. Le b
  • différence entre: Différence entre le Nokia Lumia 820 et le HTC One X

    Différence entre le Nokia Lumia 820 et le HTC One X

    Principale différence: l' un des premiers smartphones de la marque est le Nokia Lumia 820. Le Nokia Lumia 820 a été le premier des premiers téléphones à être développé sous Windows Phone 8. Il a été lancé en novembre 2012 comme une alternative légèrement moins chère Nokia 920. Le HTC One X est un produit populaire de HTC Corporation. Il est livré
  • différence entre: Différence entre Sony Xperia S et Samsung Galaxy S3

    Différence entre Sony Xperia S et Samsung Galaxy S3

    Principale différence: le Xperia S est doté d'un écran tactile TFT de 4, 3 pouces avec une feuille incassable sur un verre anti-rayures. L'écran offre une densité impressionnante de 342 ppp et est alimenté par un processeur Qualcomm Dual-Core de 1, 5 GHz. Le Galaxy S3 est un smartphone multi-touch au format ardoise lancé en mai 2012. Il es
  • différence entre: Différence entre les packs DLC et les packs d'extension

    Différence entre les packs DLC et les packs d'extension

    Principale différence : le contenu téléchargeable et le pack d'extension sont à peu près identiques, ces deux fichiers étant utilisés pour ajouter de nouvelles fonctionnalités, un scénario, des personnages ou simplement pour prolonger la durée de vie du jeu. Il n'y a pas beaucoup de différence entre le contenu téléchargeable et un pack d'extension. Le terme &q
  • différence entre: Différence entre les jumeaux et les clones

    Différence entre les jumeaux et les clones

    Différence clé: les jumeaux sont quand une femme donne naissance à deux bébés dans la même grossesse. Le clonage est le processus par lequel un scientifique et un médecin créent une copie génétique exacte d'un organisme. Les jumeaux et les clones sont une question très délicate, en particulier en ce qui concerne le clonage humain, qui fait actuellement l'objet de recherches et de débats. Bien que le
  • différence entre: Différence entre Motorola Moto 360 et Asus ZenWatch

    Différence entre Motorola Moto 360 et Asus ZenWatch

    Différence clé: Motorola Moto 360 est la montre intelligente phare de Google et a été lancée grâce à la collaboration des deux sociétés. Asus ZenWatch est Asus essayer d'entrer sur le marché relativement peu exploité de smartwatch. La technologie augmentant à un rythme rapide, les tendances évoluent maintenant à un rythme similaire pour suivre le rythme des technologies. La tendance
  • différence entre: Différence entre Kurta et Kurti

    Différence entre Kurta et Kurti

    Principale différence: la principale différence entre Kurta et Kurti n’est rien de plus que leur longueur. Les kurta sont normalement longs, généralement au genou ou au mollet, alors que les kurti sont souvent courts et mesurent à la taille ou aux hanches. Kurta et Kurti sont tous deux différents types de hauts qui peuvent être portés. Ils étai
  • différence entre: Différence entre Samsung Galaxy S2 et Samsung Galaxy S3

    Différence entre Samsung Galaxy S2 et Samsung Galaxy S3

    Différence clé: le Samsung Galaxy S2 a été lancé en avril 2011 et était l'un des smartphones les plus minces à cette époque. Le téléphone offrait des fonctionnalités supplémentaires, des mises à jour logicielles, un matériel étendu et un physique repensé par rapport au S. Galaxy S2 d'origine doté d'un écran capacitif Super AMOLED Plus de 4, 3 pouces offrant une résolution de 480 x 800 pixels. Le Galaxy S3 est
  • différence entre: Différence entre le hijab et la burqa

    Différence entre le hijab et la burqa

    Principale différence: le hijab et la burqa sont deux types de vêtements disponibles pour les femmes islamiques. Un hijab ou hejab fait en réalité référence aux règles de la dissimulation. Cependant, dans le contexte quotidien habituel, le mot est utilisé pour désigner une écharpe recouvrant la tête. Une burqa

Choix De L'Éditeur

Différence entre DBA et SGBD

Différence clé: DBA désigne l'administrateur de base de données, alors que SGBD désigne le système de gestion de base de données. Un DBA est associé à la conception, la mise en œuvre, la maintenance et la réparation de la base de données d'une organisation. Le SGBD gère généralement une grande quantité de données structurées avec les avantages du traitement des requêtes, du contrôle de l'accès aux données, du partage et de la récupération des données, ainsi que de la modification des données. Le domaine informatique