Différence entre les classes et les structures

Différence entre les classes et les structures

Cours 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 à réaliser ces concepts dans la plupart des langages de programmation OO qui sortent (Java ne fournit pas de structures). Les classes sont une représentation abstraite des objets du monde réel. Les structures sont très similaires aux classes à usage similaire, mais ont peu de limites par rapport aux classes. Les classes et la structure sont utilisées pour regrouper un type de données similaire, ensemble.

Que sont les classes?

Les classes décrivent la représentation abstraite des objets du monde réel, tandis que les relations décrivent comment chaque classe est liée aux autres. Les classes et les relations ont des propriétés appelées attributs. Les méthodes dans les classes représentent ou définissent le comportement de ces classes. Les méthodes et les attributs des classes sont appelés membres de la classe. En règle générale, l'encapsulation est obtenue 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 les 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 à la place d'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 du programme. Et de même, les verbes deviennent des méthodes. Le public, privé et protégé sont les modificateurs d'accès typiques utilisés pour les classes. Un diagramme de classe 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 sont des capacités légèrement limitées que les classes. En fait, les classes peuvent être considérées comme une extension des structures. Par exemple, les structures sont les mêmes que les classes en C ++, mais ils ont des membres publics par défaut. Une structure peut être définie par l'utilisateur pour représenter un type composite. Semblable aux classes, les structures contiennent des membres qui peuvent appartenir à de nombreux types. Le mot-clé structure est utilisé pour définir une structure en C et C ++, tandis que la structure du mot-clé est utilisée pour la même .Langages de programmation nette.

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, ils ont des différences subtiles. En règle générale, la classe est une extension de la structure, et donc les structures ont certaines 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 contenir aucune fonction ou opération surchargée. La classe et la structure des mots clés sont utilisés pour définir une classe et une structure en C ++, respectivement. Quand cela vient à .Langues nettes (C #, VB.Net, etc.), la classe est un type de référence, tandis que la structure est un type de valeur. Et généralement, les structures sont utilisées pour des objets plus petits, mais les classes sont utilisées pour des objets plus grands qui sont conservés dans la mémoire pendant des périodes plus longues.