Qu'est-ce que l'encapsulation en programmation orientée objet ?
L'encapsulation fusionne données et fonctions dans une classe.
Que définit une classe en programmation orientée objet ?
Une classe définit des attributs et des méthodes sans contenir les données d'un objet.
Que signifie le statut public pour un membre d'une classe ?
Il rend le membre accessible depuis l'extérieur.
Que signifie le statut protected pour un membre d'une classe ?
Il rend le membre accessible depuis la classe et ses dérivées.
Que signifie le statut private pour un membre d'une classe ?
Il limite l'accès au membre à la classe elle-même.
Quel est l'effet du contrôle d'accès non public sur les données ?
Il interdit l'accès direct aux données.
Que permet le contrôle d'accès non public via des méthodes publiques ?
Il permet de vérifier la validité des données avant écriture.
Que permet le mot-clé friend en C++ ?
Il accorde des droits particuliers malgré les statuts d'accès.
Quelle est la différence entre une classe et un objet ?
Une classe est un modèle, un objet est une instance contenant ses données.
Qu'est-ce qu'un constructeur en programmation orientée objet ?
Une méthode nommée comme la classe qui construit et initialise un objet sans valeur de retour.
Que fait le compilateur si aucun constructeur par défaut n'est écrit ?
Il génère automatiquement un constructeur par défaut.
Que se passe-t-il si un programmeur écrit un constructeur ?
Il surcharge la version générée automatiquement par le compilateur.
Quand une classe peut-elle posséder plusieurs constructeurs ?
Quand leurs listes de paramètres sont différentes.
Qu'est-ce que le pointeur this dans une classe ?
Un attribut caché qui pointe vers l'objet lui-même.
Quel est le rôle du constructeur de copie ?
Il copie un objet via un paramètre référence vers la même classe.
Comment se nomme un destructeur et que fait-il ?
Il porte le nom de la classe précédé de ~ et détruit l'objet.
Qu'impose l'opérateur . pour accéder aux membres d'un objet ?
Le membre doit être accessible selon son statut.
Qu'est-ce que la définition immédiate en programmation ?
Elle regroupe données et méthodes dans un seul fichier.
Comment la définition différée organise-t-elle les déclarations et définitions ?
Les déclarations sont dans un fichier .h et les définitions dans un fichier .cpp.
Qu'est-ce qu'un setter en programmation orientée objet ?
Une méthode qui modifie une donnée en vérifiant sa validité.
Quel est le rôle d'un getter dans une classe ?
Lire et retourner une donnée masquée.
Pourquoi doit-on utiliser des setters pour écrire une donnée ?
Pour maintenir la validité de la donnée.
Quel est l'avantage des getters concernant l'accès aux attributs ?
Ils interdisent la lecture directe de l’attribut.
Qu'est-ce qu'un attribut static dans une classe ?
Une donnée unique partagée par tous les objets de la classe.
Comment une méthode static diffère-t-elle d'une méthode d'objet ?
Elle est indépendante des attributs propres à un objet.
Peut-on appeler une méthode static sans objet défini ?
Oui, une méthode static peut être appelée sans objet.
Que représente la classe Fenetre ?
Une fenêtre console définie par ses coordonnées et dimensions.
Quelles limites doivent respecter les paramètres d'une Fenetre ?
Ils doivent être dans une console de 80 colonnes et 25 lignes.
Quelle contrainte s'applique à la coordonnée x d'une Fenetre ?
x doit être compris entre 0 et 79.
Quels types de méthodes la classe Fenetre doit-elle utiliser ?
Des setters pour valider et des getters pour afficher les paramètres.
Que fait la méthode dessiner dans la classe Fenetre ?
Elle affiche le cadre de la fenêtre.
Quel est le rôle du destructeur dans la classe Fenetre ?
Il efface le cadre et son contenu.
Qu'est-ce qu'une relation de dépendance entre classes ?
Une classe utilise une autre classe, la rendant dépendante.
Donnez un exemple d'une relation de dépendance entre classes.
Fenetre utilise Position dans une méthode, rendant Fenetre dépendante de Position.
Comment se représente une dépendance unidirectionnelle en UML ?
Par un trait en pointillé avec une flèche vers la classe utilisée.
Qu'est-ce que la composition en programmation orientée objet ?
Une agrégation forte où une classe contient un attribut d'une autre classe.
Que se passe-t-il lors de la création d'une Fenetre sans constructeur spécifique pour Position ?
L'attribut Position est construit par défaut avec son constructeur par défaut.
Quel est l'effet d'une liste d'initialisation comme posHauGau(x, y) dans Fenetre ?
Elle appelle directement le constructeur surchargé de Position.
Qu'est-ce qu'une relation d'association en programmation C++ ?
Un lien permanent entre deux classes codé par un pointeur ou une référence.
Comment doit-on instancier une association en C++ ?
Elle doit être instanciée explicitement par affectation d'adresse.
Combien de noms la classe ListePersonnes peut-elle contenir ?
De 0 à 20 noms.
Quelles méthodes la classe ListePersonnes doit-elle proposer ?
Un constructeur par défaut, ajouterPersonne et afficherPersonnes.
Que représente la classe Personne ?
Chaque personne de la liste avec un nom et un identifiant numérique.
Teste tes connaissances avec un QCM de 24 questions sur POO C++ et encapsulation.
1. Que réalise principalement l’encapsulation dans une classe ?
2. Quelle distinction décrit correctement une classe et les données d’un objet ?
Révisez le cours complet dans la fiche de révision de POO C++ et encapsulation.
Voir la fiche →Importe ton cours et l'IA génère des flashcards en 30 secondes.
Générateur de flashcards