Exam 1 (module 2) Flashcards
(83 cards)
État d’un objet
Valeurs de ses attributs ou
de l’information qu’il
contient.
Comportement d’un objet
Ensemble des opérations
que l’on peut effectuer sur
celui-ci.
Identité d’un objet
Deux objets peuvent être exactement dans le même état,
mais sont différents de part leur identité unique (adresse en mémoire)
Objet (définition)
Entité discrète qui existe dans le temps et dans l’espace.
Classe (définition)
-Abstraction qui n’existe que dans les programmes
-Représente un ensemble d’objets qui partagent une structure commune et un comportement commun
Qu’est-ce qu’une classe définit
Les opérations permises sur les objets de la classe et les états qu’ils peuvent prendre
2 synonymes d’objet
instance et occurrence
Qu’est-ce que l’interface d’une classe?
Elle contient principalement les déclarations de toutes les
opérations applicables sur les instances de cette classe et elle définit ce qui est vu de l’extérieur
L’interface d’une classe est dans quel fichier?
Le .h
Qu’est-ce que l’implémentation d’une classe?
Ce qui est caché à l’intérieur de la classe (le code qui réalise les opérations qui sont définies dans l’interface).
L’implémentation d’une classe est dans quel fichier?
le .cpp
(publique ou privé?) Les méthodes sont xxx et les membres sont xxx.
méthodes = publiques, membres/attributs = privés
Pourquoi mettre quelque chose dans la partie privée de la classe?
Pour pas que l’utilisateur puisse le changer et faire des erreurs
Rôle d’une classe
Assurer la validité de tous les objets créés à partir d’elle
Quand est-ce qu’un objet doit être valide?
De sa création à sa destruction
À quoi sert l’encapsulation
Ne pas permettre l’accès direct aux attributs d’un objet (il faut passer par un accesseur et un mutateur)
Problèmes possibles si les attributs ne sont pas contrôlés
➢Possibilité de non-initialisation.
➢Possibilité de mauvaise assignation.
(Pas de garantie sur la validité des données)
La visibilité d’une classe est XXXX par défaut
privée! (la norme est de la spécifier explicitement)
(Vrai ou faux) On peut accéder directement à des attributs privés
faux
Norme du cours sur le nom d’un membre/attribut
m_blablabla
Pour utiliser une classe qu’on a fait il faut inclure quoi dans le main?
include Classe.h
Rôle des méthodes
Contrôler l’assignation des valeurs sur les champs
C’est quoi “this”
Un pointeur vers l’objet courant
Quand on crée un objet, qu’est-ce qui doit être initialisée pour qu’il soit cohérent?
ses attributs (à l’aide du constructeur)