Introduction à l'héritage en C #

L'héritage en C # est le processus d'acquisition de toutes les propriétés d'une classe dans une autre classe. Il existe deux classes appelées classe de base et classe dérivée. La classe de base est également connue sous le nom de classe parent et les propriétés ou méthodes de cette classe que nous voulons hériter d'une autre classe.

La classe dérivée est connue sous le nom de classe enfant qui est utilisée pour hériter des propriétés et des méthodes de la classe de base ou de la classe parent. Il aide à réutiliser le même code à nouveau et pas besoin de définir les mêmes propriétés encore et encore.

L'héritage est l'un des concepts puissants ou des attributs fondamentaux du langage de programmation orienté objet. Il est largement utilisé dans tous les langages de programmation basés sur les POO. Son objectif principal est de réutiliser le même code. L'exemple de la structure de base de l'héritage est donné ci-dessous:

class BaseClass ( )
class ChildClass: BaseClass ()

Types d'héritage en C #

Il existe différents types d'héritage en C #:

1. Héritage à un niveau

Dans l'héritage simple, il n'y a qu'une seule classe de base et une classe dérivée. Cela signifie que la classe enfant héritera des propriétés de la classe parent et l'utilisera.

Exemple:
class BaseClass
(
public void hello()
(
Console.WriteLine("Parent's Hello Method");
)
)
class ChildClass : BaseClass
(
public void World()
(
Console.WriteLine("Child's World Method");
)
)

2. Héritage à plusieurs niveaux

Dans ce type d'héritage, il n'y a qu'une seule classe de base et plusieurs classes dérivées sont disponibles. Si une classe est créée à l'aide d'une autre classe dérivée, c'est l'héritage multiniveau.

Exemple:

class BaseClass
(
public void hello()
(
Console.WriteLine("Parent's Hello Method");
)
)
class ChildClass : BaseClass
(
public void World()
(
Console.WriteLine("Child's World Method");
)
)
class SecondChildClass : ChildClass
(
public void Hi()
(
)
)

3. Héritage multiple

Dans ce type d'héritage, cela peut être réalisé à l'aide de plusieurs interfaces, pas avec une classe. En termes simples, C # ne prend pas en charge plusieurs héritages, mais si vous souhaitez y parvenir, vous pouvez le faire à l'aide d'interfaces uniquement.

Exemple:

Interface A ()
Interface B ()
Class C: A, B ()

4. Héritage hiérarchique

Dans ce type d'héritage, il existe une classe parent et les autres classes dérivées héritent de la même classe parent pour réaliser cet héritage.

Exemple :

class BaseClass
(
public void hello()
(
Console.WriteLine("Parent's Hello Method");
)
)
class ChildClass : BaseClass
(
public void World()
(
Console.WriteLine("Child's World Method");
)
)
class SecondChildClass : BaseClass
(
public void Hi()
(
)
)

Avantages de l'héritage

Les avantages de l'héritage sont:

  • Il aide à réutiliser le même code signifie qu'il est réutilisable.
  • Il réduit la redondance du code.
  • Cela aide à lire le code plus confortablement.
  • Il réduit également la taille du code source et du fichier.
  • Il aide à fournir l'extensibilité au code.
  • Le code est facile à gérer car il est divisé en classes de la classe de base et de la classe enfant.
  • Les membres privés ne sont pas accessibles dans la classe dérivée lorsque les membres de la classe de base sont hérités par la classe dérivée.
  • Il ne prend pas en charge plusieurs héritages mais peut être obtenu via des interfaces.
  • Il aide à atteindre le polymorphisme qui permet à un objet de représenter plus d'un type.
  • Il aide à diviser le grand code en petits morceaux.

Caractéristiques de l'héritage

Les caractéristiques de l'héritage sont:

  • L'héritage peut être utilisé pour empêcher l'instanciation directe de la classe, et pour atteindre ce mot clé abstrait a été utilisé.
  • Les membres de la classe de base sont accessibles dans la classe dérivée, à l'exception des membres de clé privée.
  • Les membres de la classe de base peuvent être hérités dans la classe dérivée, à l'exception du constructeur et du destructeur.
  • En C #, les méthodes virtuelles d'une classe de base doivent utiliser le mot-clé override dans la classe dérivée.
  • En C #, pour éviter l'héritage de la classe qui peut être déclarée avec le mot-clé scellé.
  • Si les membres hérités doivent être masqués avec le même nom et la même signature dans la classe dérivée, cette méthode doit être définie avec le nouveau mot clé.

Pourquoi utiliser l'héritage et comment cela facilite-t-il le travail?

L'héritage est utilisé lorsque le même code doit être utilisé dans une autre classe. Ainsi, au lieu d'écrire le même code, encore et encore, il existe un concept de programmation orientée objet qui est l'héritage qui aide à utiliser les mêmes fonctionnalités comme les méthodes ou les propriétés d'une classe à une autre classe. À l'aide du point-virgule (:), nous pouvons hériter des membres de la classe de base en classe enfant ou en classe dérivée.

Il est facile à travailler car il aide à éviter la confusion de l'appel de méthode à partir de laquelle la méthode de classe est appelée. Il rend le code réutilisable et rend le fichier plus léger avec moins de lignes de code source. Cela rend le code moins redondant et plus flexible à utiliser dans différentes classes. Il conserve la structure du programme qui facilite la lecture du code.

Conclusion - Héritage en C #

  • L'héritage est le concept le plus largement utilisé de programmation orientée objet dans tous les langages basés sur les POO et donc en C #. Il aide le développeur à réaliser de nombreuses choses et rend le code plus fluide et lisible.
  • Le polymorphisme est l'autre concept oops qui peut être réalisé à l'aide de l'héritage uniquement. La plupart des problèmes ont été résolus avec ces deux concepts allant de pair.
  • Dans l'héritage, la classe de base et la classe dérivée sont étroitement couplées comme s'il y avait un changement dans la classe de base, alors automatiquement toute la classe enfant sera affectée. L'héritage doit être utilisé très soigneusement, comme si les membres de données n'étaient pas correctement utilisés et que la mémoire leur était allouée, cela affectait les performances de l'application.
  • Il existe différents niveaux d'héritage utilisés dans la programmation ou le développement d'une application. Il peut être implémenté dans tout type d'application comme les applications Web ou de bureau. Cela dépend du développeur comment et où utiliser l'héritage car cela donne beaucoup de flexibilité, de fonctionnalités et aide à réaliser les choses.

Articles recommandés

Cela a été un guide pour l'héritage en C #. Ici, nous avons discuté de l'introduction, des types, des avantages et des fonctionnalités de l'héritage en C #. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus-

  1. Héritage dans VB.Net
  2. Qu'est-ce que le multithreading en C #?
  3. Commandes C #
  4. C # vs JavaScript
  5. Héritage en Java
  6. Méthodes de multithreading en C #