Différence Entre Les Classes Et Les Structures

Différence Entre Les Classes Et Les Structures
Différence Entre Les Classes Et Les Structures

Vidéo: Différence Entre Les Classes Et Les Structures

Vidéo: Différence Entre Les Classes Et Les Structures
Vidéo: CLASSES vs STRUCTS en C+ 2024, Novembre
Anonim

Classes vs structures

Certains des principaux concepts des langages de programmation orientés objet (OO) sont l'encapsulation, l'héritage et le polymorphisme. La classe et la structure sont deux des constructions / outils OO, qui aident les programmeurs à atteindre ces concepts dans la plupart des langages de programmation OO existants (Java ne fournit pas de structures). Les classes sont une représentation abstraite d'objets du monde réel. Les structures sont très similaires aux classes avec une utilisation similaire, mais ont peu de limitations par rapport aux classes. Les classes et la structure sont utilisées pour regrouper des types de données similaires.

Que sont les classes?

Les classes représentent la représentation abstraite d'objets du monde réel, tandis que les relations décrivent comment chaque classe est connectée aux autres. Les classes et les relations ont des propriétés appelées attributs. Les méthodes des classes représentent ou définissent le comportement de ces classes. Les méthodes et attributs des classes sont appelés les membres de la classe. En général, l'encapsulation est réalisée en rendant les attributs privés, tout en créant des méthodes publiques qui peuvent être utilisées pour accéder à ces attributs. Un objet est l'instance d'une classe. L'héritage permet à l'utilisateur d'étendre des classes (appelées sous-classes) à partir d'autres classes (appelées super classes). Le polymorphisme permet au programmeur de substituer un objet d'une classe à un objet de sa super classe. En règle générale, les noms trouvés dans la définition du problème deviennent directement des classes dans le programme. Et de même,les verbes deviennent des méthodes. Public, privé et protégé sont les modificateurs d'accès typiques utilisés pour les classes. Un diagramme de classes montre les classes des systèmes, les relations entre les classes et leurs attributs.

Que sont les structures?

Comme mentionné ci-dessus, les structures sont très similaires aux classes avec une utilisation similaire, mais leurs capacités sont légèrement limitées par rapport aux classes. En fait, les classes peuvent être considérées comme une extension des structures. Par exemple, les structures sont identiques aux classes en C ++, mais elles ont des membres publics par défaut. Une structure peut être définie par l'utilisateur pour représenter un type composite. À l'instar des classes, les structures contiennent des membres qui peuvent appartenir à plusieurs types. Le mot-clé struct est utilisé pour définir une structure en C et C ++, tandis que le mot-clé Structure est utilisé pour la même chose dans les langages de programmation. NET.

Quelle est la différence entre les classes et les structures?

Même si les classes et les structures sont des constructions similaires trouvées dans les langages de programmation, elles présentent des différences subtiles. En règle générale, la classe est une extension de la structure et les structures ont donc des limitations relatives. Par exemple, les structures peuvent être considérées comme les mêmes que les classes en C ++, mais les membres ne sont pas publics par défaut dans les classes (contrairement aux structures). Cela signifie en fait que vous pouvez définir une classe et une structure avec exactement les mêmes caractéristiques en utilisant les modificateurs d'accès appropriés en C ++. Cependant en C, les structures ne peuvent pas contenir de fonctions ou d'opérations surchargées. Les mots-clés class et struct sont utilisés pour définir respectivement une classe et une structure en C ++. En ce qui concerne les langages. NET (C #, VB. NET, etc.), la classe est un type de référence, tandis que la structure est un type valeur. Et généralement,les structures sont utilisées pour les objets plus petits, mais les classes sont utilisées pour les objets plus grands qui sont conservés en mémoire pendant de plus longues périodes.

Recommandé: