Fiche de révision : Gestion des collections et visibilité en Java

📋 Plan du Cours

  1. Visibilité en Java
  2. Collections Java
  3. List et ArrayList
  4. Ensembles HashSet
  5. Types primitifs et emballage
  6. Associations entre classes
  7. Parcours collections
  8. Recherche dans collections
  9. Insertion et suppression
  10. Tri rapide Java
  11. Méthodes add/remove/contains

📖 1. Visibilité en Java

🔑 Notions clés & Définitions

Visibilité (ou portée) : La zone dans laquelle un élément (attribut, méthode, constructeur) d'une classe est accessible. Elle détermine la visibilité ou l'accessibilité de ces éléments depuis d'autres classes ou packages.

Public : Modificateur d'accès en Java indiquant que l'élément est accessible depuis n'importe quelle autre classe, même en dehors du package. Utilisé pour les méthodes ou classes destinées à être utilisées globalement.

Private : Modificateur d'accès limitant la visibilité à la classe elle-même. Les éléments déclarés privés ne sont accessibles qu'au sein de leur propre classe, protégeant ainsi l'encapsulation.

Package-private (par défaut) : Si aucun modificateur n'est spécifié, l'élément est accessible uniquement aux classes du même package. C'est la visibilité par défaut en Java.

Protected : Modificateur d'accès permettant l'accès aux membres par les classes du même package ou par les sous-classes, même dans un autre package.

Encapsulation : Principe de programmation orientée objet consistant à cacher les détails internes d'une classe (via des membres privés) tout en fournissant une interface publique pour y accéder.

📝 Points essentiels

  • La visibilité influence la conception et la sécurité du code en contrôlant l'accès aux membres d'une classe.
  • La déclaration public est généralement réservée aux méthodes ou classes destinées à être accessibles globalement, comme la méthode main.
  • La déclaration private est recommandée pour protéger les données sensibles ou modifiables, notamment les attributs.
  • La visibilité par défaut (package-private) est souvent utilisée pour limiter l'accès à l'intérieur du même package, favorisant l'encapsulation tout en permettant une certaine modularité.
  • La bonne utilisation des modificateurs permet de respecter le principe d'encapsulation, essentiel en programmation orientée objet.

💡 À retenir

La gestion de la visibilité en Java, via public, private, protected et le défaut package-private, est fondamentale pour assurer une bonne encapsulation, protéger les données et définir clairement l'interface d'une classe.

📖 2. Collections Java

🔑 Notions clés & Définitions

  • Collection : Objet représentant un groupe d'éléments, généralement du même type, permettant de stocker, manipuler et parcourir ces éléments. Exemples : List, Set.

  • List : Interface représentant une collection ordonnée d'éléments accessibles par indice. Permet l'ajout, la suppression et la récupération d'éléments selon leur position. Exemple d'implémentation : ArrayList.

  • Set : Interface représentant une collection sans ordre spécifique, ne contenant pas de doublons. Utilisée pour stocker des éléments uniques. Exemple d'implémentation : HashSet.

  • ArrayList : Classe implémentant l'interface List, utilisant un tableau dynamique pour stocker des éléments. Permet un accès rapide par indice, une modification flexible, et une gestion automatique de la taille.

  • HashSet : Classe implémentant l'interface Set, utilisant une table de hachage pour stocker des éléments sans ordre, sans doublons, avec une recherche efficace.

  • Visibilité (public, private) : Modificateurs d'accès en Java déterminant la portée des attributs, méthodes ou classes. Public : accessible depuis n'importe quelle classe. Private : accessible uniquement dans la classe où il est défini.

📝 Points essentiels

  • Les collections en Java permettent de gérer efficacement des groupes d'objets, avec des structures adaptées à différents besoins : ordonnancement (List) ou unicité (Set).

  • ArrayList offre une gestion flexible et dynamique d'une liste d'éléments, avec accès par indice, ajout, suppression, et recherche via des méthodes intégrées.

  • HashSet garantit l'unicité des éléments, sans ordre, avec une recherche rapide grâce au hachage.

  • La visibilité des membres (public/private) influence la conception orientée objet, en contrôlant l'accès aux données et méthodes.

  • Les types primitifs (int, float, etc.) ne peuvent pas être directement utilisés dans les collections ; ils doivent être "emballés" dans leurs classes correspondantes (Integer, Float, etc.).

💡 À retenir

Les collections Java, telles que ArrayList et HashSet, offrent des structures puissantes pour organiser et manipuler des groupes d'objets, en combinant flexibilité, performance et encapsulation grâce à la gestion de la visibilité.

📖 3. List et ArrayList

🔑 Notions clés & Définitions

  • Collection : Objet regroupant plusieurs éléments, souvent d’un même type, permettant de gérer des ensembles de données de manière structurée. Exemple : List, Set.

  • ArrayList : Implémentation de la collection List en Java, qui fonctionne comme un tableau dynamique. Elle permet d’accéder, d’ajouter, de supprimer ou de modifier des éléments à tout moment, avec une gestion automatique de la taille.

  • Liste (List) : Interface Java représentant une collection ordonnée d’éléments, accessibles par leur position (indice). Elle autorise les doublons et l’ordre d’insertion.

  • Set (Ensemble) : Collection sans ordre spécifique, qui ne contient pas de doublons. Utilisée pour stocker des éléments uniques.

  • Méthode add() : Fonction permettant d’ajouter un élément à une collection. Sur ArrayList, elle ajoute en fin ou à une position spécifique si un indice est fourni.

  • Méthode remove() : Fonction qui supprime un élément d’une collection, soit par indice (pour ArrayList), soit par valeur (pour Set).

📝 Points essentiels

  • ArrayList est une structure flexible, semblable à un tableau, mais dont la taille peut évoluer dynamiquement grâce à l’API Java.

  • La gestion des doublons dans un HashSet évite la duplication d’éléments, contrairement à ArrayList qui autorise les répétitions.

  • La méthode get(i) permet d’accéder à l’élément à l’indice i dans une ArrayList.

  • La méthode contains() vérifie si un élément est présent dans une collection, utile pour la recherche.

  • La distinction entre types primitifs et objets est importante : pour stocker des types primitifs dans une collection, on utilise leurs classes enveloppantes (ex : Integer pour int).

💡 À retenir

Les collections en Java, notamment ArrayList et HashSet, offrent des outils puissants pour gérer efficacement des ensembles d’éléments, en combinant accessibilité, flexibilité et contrôle sur la duplication. Leur utilisation dépend du besoin d’ordre, de doublons ou de recherche rapide.

📖 4. Ensembles HashSet

🔑 Notions clés & Définitions

  • HashSet : Implémentation de l’interface Set en Java, utilisant une table de hachage pour stocker des éléments sans ordre particulier, sans doublons.
    Exemple : HashSet<String> set = new HashSet<>();

  • Set : Collection qui ne contient que des éléments uniques, sans ordre spécifique. La duplication est interdite.
    Point essentiel : La méthode add() retourne false si l’élément est déjà présent.

  • Hachage : Technique de stockage et d’accès aux éléments basée sur une fonction de hachage, permettant une recherche rapide.
    Note : La méthode hashCode() est utilisée pour déterminer la position d’un objet dans la table.

  • Méthode contains() : Fonction qui vérifie si un élément est présent dans la collection, en utilisant le hachage pour une recherche efficace.
    Exemple : set.contains("sugar")

  • Suppression (remove()) : Opération qui retire un élément spécifique du HashSet si présent, en utilisant la fonction de hachage pour localiser rapidement l’élément.

  • Propriété d’unicité : Dans un HashSet, chaque élément apparaît une seule fois. Les doublons sont ignorés lors de l’ajout.

📝 Points essentiels

  • HashSet ne garantit pas l’ordre d’insertion des éléments ; l’ordre peut changer lors des opérations.
  • La recherche d’un élément dans un HashSet est en moyenne en temps constant (O(1)), grâce à la technique de hachage.
  • La méthode add() ne permet pas d’ajouter un doublon ; si l’élément existe déjà, la collection ne change pas.
  • La méthode remove() supprime un élément si présent, sinon ne fait rien.
  • La comparaison des éléments dans HashSet repose sur equals() et hashCode() ; il est crucial que ces méthodes soient bien redéfinies pour les objets personnalisés.

💡 À retenir

Le HashSet est une collection efficace pour stocker des éléments uniques sans ordre, offrant une recherche, une insertion et une suppression rapides grâce à la technique de hachage.

📖 5. Types primitifs et emballage

🔑 Notions clés & Définitions

  • Types primitifs : Types de données de base en Java (int, float, double, char, boolean) qui stockent directement une valeur et ne sont pas des objets.
  • Classe d’emballage (Wrapper class) : Classe permettant d'encapsuler une valeur primitive dans un objet, facilitant leur utilisation dans des collections ou des méthodes nécessitant des objets. Exemples : Integer pour int, Double pour double, Boolean pour boolean.
  • Autoboxing : Conversion automatique d'une valeur primitive en objet de la classe d’emballage correspondante. Exemple : Integer a = 7; (au lieu de new Integer(7)).
  • Unboxing : Conversion automatique d’un objet de classe d’emballage vers la valeur primitive correspondante. Exemple : int b = a;a est un Integer.
  • Collections et types primitifs : Les collections Java (ArrayList, HashSet) ne peuvent contenir que des objets, d’où la nécessité d’utiliser des classes d’emballage pour stocker des types primitifs.
  • Comparaison : La méthode equals() compare la valeur contenue dans deux objets d’emballage, tandis que == compare leurs références (adresses mémoire).

📝 Points essentiels

  • Les types primitifs sont plus légers et plus performants que les objets, mais ne peuvent pas être directement utilisés dans les collections génériques.
  • L’emballage permet d’utiliser des types primitifs dans des collections, en créant des objets qui encapsulent ces valeurs.
  • La conversion automatique (autoboxing et unboxing) simplifie la manipulation des types primitifs et objets d’emballage.
  • La comparaison de deux objets d’emballage doit se faire avec equals() pour comparer leur contenu, pas avec ==.
  • Les classes d’emballage sont immuables : leur valeur ne peut pas changer après création.

💡 À retenir

Les types primitifs en Java stockent directement des valeurs, mais pour leur utilisation dans des collections ou des contextes objets, ils doivent être encapsulés dans des classes d’emballage, avec une conversion automatique facilitant leur manipulation.

📖 6. Associations entre classes

🔑 Notions clés & Définitions

  • Association : Relation entre deux classes où une classe utilise ou connaît l’existence d’une autre, permettant la communication ou la collaboration entre elles. Exemple : une classe Commande associée à une classe Produit.

  • Association simple : Relation un-à-un ou un-à-plusieurs entre deux classes, sans dépendance forte. Elle indique que des objets d’une classe peuvent faire référence à des objets d’une autre classe.

  • Association bidirectionnelle : Relation où deux classes se connaissent mutuellement, chacune ayant une référence vers l’autre. Exemple : une classe Etudiant et une classe Université où chaque étudiant connaît son université et vice versa.

  • Association unidirectionnelle : Relation où une classe connaît une autre, mais pas l’inverse. Exemple : une classe Client qui connaît ses Commandes, mais pas l’inverse.

  • Multiplicité : Indication du nombre d’objets liés dans une association (ex : 1..*, 0..1, 1). Elle précise combien d’instances d’une classe peuvent être associées à une instance d’une autre.

  • Agrégation et Composition : Formes particulières d’association. L’agrégation représente une relation “partie-tout” faible (ex : une Classe composée de plusieurs Etudiants), tandis que la composition est une relation forte où la vie de la partie dépend de celle du tout (ex : une Maison et ses Pièces).

📝 Points essentiels

  • Les associations permettent la modélisation des relations entre classes dans la programmation orientée objet.
  • La multiplicité est cruciale pour définir le nombre d’objets liés dans une association.
  • La différence entre agrégation et composition concerne la dépendance de vie entre les objets liés.
  • La visibilité des références dans une association influence l’accès et la navigation entre objets.
  • La gestion des associations doit respecter le principe d’encapsulation, en utilisant des méthodes d’accès (getters/setters).

💡 À retenir

Les associations entre classes modélisent les relations de collaboration dans un système orienté objet, en précisant la nature, la direction, et la multiplicité de ces relations pour une conception claire et cohérente.

📖 7. Parcours collections

🔑 Notions clés & Définitions

  • Collection : Objet regroupant plusieurs éléments, généralement du même type, permettant de stocker, manipuler et parcourir ces éléments. Exemples en Java : List, Set, ArrayList, HashSet.

  • ArrayList : Implémentation de la collection List en Java, basée sur un tableau dynamique. Elle permet un accès rapide par indice, l’ajout, la suppression et la modification d’éléments avec une gestion dynamique de la taille.

  • HashSet : Implémentation de la collection Set en Java, qui stocke des éléments uniques sans ordre précis. Elle évite les doublons et ne permet pas l’accès par indice.

  • Parcours (itération) : Opération consistant à parcourir tous les éléments d’une collection pour les traiter ou les afficher. En Java, on utilise souvent une boucle for avec ou sans indice, ou une boucle for-each.

  • Recherche : Opération visant à localiser un élément dans une collection. Peut être séquentielle (par parcours) ou dichotomique (sur une collection triée). La méthode contains() permet de vérifier la présence d’un élément dans une collection.

  • Insertion et suppression : Ajout ou retrait d’un élément dans une collection. Avec ArrayList, on utilise add() et remove(). Avec HashSet, on utilise aussi add() et remove(), mais sans ordre ni indices.

📝 Points essentiels

  • La distinction entre List (ex : ArrayList) et Set (ex : HashSet) est fondamentale : la première autorise les doublons et l’accès par indice, la seconde garantit l’unicité et n’a pas d’ordre défini.

  • Le parcours d’une collection peut se faire via une boucle indexée (for(int i=0; i<collection.size(); i++) + get(i)) ou une boucle for-each (for(Type element : collection)).

  • La recherche dans une collection non triée se fait généralement par parcours séquentiel avec contains() ou equals(). La recherche dichotomique nécessite une collection triée et une méthode de division récursive.

  • La manipulation efficace des collections repose sur l’utilisation appropriée des méthodes add(), remove(), get(), contains(), et size().

💡 À retenir

Les collections en Java offrent des structures variées pour stocker et manipuler des objets ; leur choix dépend du besoin en ordre, unicité, et performance. La maîtrise du parcours, de la recherche et de la modification est essentielle pour une programmation orientée objets efficace.

📖 8. Recherche dans collections

🔑 Notions clés & Définitions

  • Collection : Objet regroupant plusieurs éléments, généralement du même type, permettant de stocker, manipuler et parcourir ces éléments. Exemples : List, Set, ArrayList, HashSet.

  • ArrayList : Implémentation de la collection List en Java, qui fonctionne comme un tableau dynamique. Permet l’accès par indice, l’ajout, la suppression et la modification d’éléments à tout moment.

  • HashSet : Implémentation de la collection Set en Java, qui stocke des éléments uniques sans ordre précis. Évite les doublons et ne permet pas l’accès par indice.

  • Méthode contains() : Fonction de la classe Collection (et ses implémentations) qui vérifie si un élément spécifique est présent dans la collection. Retourne un booléen.

  • Recherche séquentielle : Algorithme qui parcourt chaque élément d’une collection ou d’un tableau pour trouver une valeur spécifique, en vérifiant chaque élément successivement.

  • Tri (Ordonnancement) : Processus de réorganisation d’une collection selon un ordre défini (lexicographique, numérique). Nécessaire pour la recherche dichotomique.

📝 Points essentiels

  • La recherche dans une collection peut se faire par parcours séquentiel ou par recherche dichotomique (après tri).

  • ArrayList permet un accès direct à un élément via son indice avec get(), facilitant la recherche séquentielle.

  • HashSet offre une recherche efficace grâce à contains(), qui utilise une table de hachage pour une vérification rapide.

  • La méthode contains() est essentielle pour tester la présence d’un élément dans une collection, notamment dans un HashSet.

  • La recherche séquentielle dans un tableau ou une liste consiste à parcourir chaque élément jusqu’à trouver la valeur ou atteindre la fin.

  • La recherche dichotomique nécessite une collection triée et divise successivement l’espace de recherche pour localiser rapidement un élément.

💡 À retenir

La recherche dans une collection dépend de sa structure : un ArrayList facilite la recherche séquentielle par accès direct, tandis qu’un HashSet permet une recherche efficace via contains(). Le tri préalable est indispensable pour la recherche dichotomique, qui offre une performance optimale sur des collections ordonnées.

📖 9. Insertion et suppression

🔑 Notions clés & Définitions

  • Insertion : Opération consistant à ajouter un élément dans une collection (liste, ensemble) à une position spécifique ou à la fin. En Java, cela se réalise via des méthodes comme add() pour les listes ou add()/addAll() pour les collections.

  • Suppression : Opération qui consiste à retirer un élément d'une collection. En Java, cela peut se faire par remove() en précisant l'élément ou l'indice, ou par clear() pour vider la collection.

  • Collection ordonnée : Structure de données où l’ordre des éléments est significatif, comme une ArrayList. La position des éléments est définie par leur ordre d’insertion ou de tri.

  • Collection non ordonnée : Structure où l’ordre n’a pas d’importance, comme un HashSet. Les éléments sont stockés sans ordre précis, et la suppression ou recherche se fait via des méthodes comme contains().

  • Décalage : Mouvement des éléments dans une collection lors d’une insertion ou suppression pour maintenir la cohérence de l’ordre ou la continuité des indices, notamment dans un tableau ou une liste.

  • Tri : Opération qui consiste à réorganiser les éléments d’une collection selon un ordre défini (lexicographique, numérique). En Java, cela utilise des méthodes comme Collections.sort() ou Arrays.sort().

📝 Points essentiels

  • La méthode add() dans une ArrayList permet d’insérer un élément à une position spécifique ou à la fin, en décalant les éléments si nécessaire.
  • La suppression dans une collection peut se faire par valeur (remove(element)) ou par indice (remove(index)), ce qui entraîne un décalage automatique des éléments suivants.
  • Les collections ordonnées permettent de conserver un ordre précis, facilitant la recherche séquentielle ou le tri.
  • Les collections non ordonnées, comme HashSet, évitent les doublons et ne garantissent pas l’ordre d’insertion, mais offrent une recherche efficace via contains().
  • Lors d’une insertion ou suppression dans une liste, le décalage des éléments est automatique, mais coûteux en termes de performance pour de grandes collections.

💡 À retenir

L’insertion et la suppression dans les collections Java varient selon leur nature (ordonnée ou non) et leur implémentation. La gestion efficace de ces opérations repose sur la compréhension de leur impact sur la structure et la performance, notamment en termes de décalage et de recherche.

📖 10. Tri rapide Java

🔑 Notions clés & Définitions

Tri rapide (QuickSort)
Algorithme de tri par division et conquête qui partitionne un tableau en deux sous-tableaux autour d’un pivot, puis trie récursivement chaque sous-tableau.
Point essentiel : La performance moyenne est de O(n log n), mais le pire cas est de O(n²).

Partition
Opération qui réorganise un tableau en plaçant le pivot à sa position finale, avec tous les éléments plus petits à gauche et plus grands à droite.
Point essentiel : La méthode clé du tri rapide, déterminant la division récursive.

Pivot
Élément choisi dans le tableau pour servir de référence lors de la partition.
Point essentiel : La sélection du pivot influence la performance ; un pivot mal choisi peut entraîner un pire cas.

Récursion
Technique où une fonction s’appelle elle-même pour traiter des sous-problèmes plus petits.
Point essentiel : Le tri rapide utilise la récursion pour trier les sous-tableaux après partition.

Complexité algorithmique
Mesure de la performance d’un algorithme en fonction de la taille de l’entrée.
Point essentiel : Tri rapide a une complexité moyenne de O(n log n), mais peut atteindre O(n²) dans le pire cas.

Méthode de séparation (partition)
Fonction qui échange des éléments dans le tableau pour placer le pivot à sa position correcte, en séparant les éléments plus petits et plus grands.
Point essentiel : Elle est essentielle pour diviser le problème en sous-problèmes plus simples.

📝 Points essentiels

  • Le tri rapide repose sur la sélection d’un pivot et la partition du tableau.
  • La méthode de partition doit échanger efficacement les éléments pour garantir la performance.
  • La récursion s’applique sur les sous-tableaux à gauche et à droite du pivot.
  • La performance dépend de la stratégie de choix du pivot (moyenne, médiane, aléatoire).
  • La fonction de tri doit gérer les cas de tableaux déjà triés ou de tailles faibles pour éviter la récursion infinie ou inefficace.

💡 À retenir

Le tri rapide est un algorithme efficace pour trier de grands ensembles, grâce à sa méthode de partition et sa récursion, mais sa performance dépend fortement du choix du pivot.

📖 11. Méthodes add/remove/contains

🔑 Notions clés & Définitions

  • add() : Méthode permettant d’ajouter un élément à une collection. Sur une ArrayList, elle ajoute à la fin ou à une position spécifique ; sur un HashSet, elle ajoute un élément si celui-ci n’est pas déjà présent.
    Exemple : list.add("mot") ajoute "mot" à la liste.

  • remove() : Méthode permettant de supprimer un élément d’une collection. Sur une ArrayList, elle peut supprimer par indice ou par objet ; sur un HashSet, elle supprime l’élément si présent.
    Exemple : list.remove(2) supprime l’élément à l’indice 2.

  • contains() : Méthode qui vérifie si un élément est présent dans une collection. Retourne true si l’élément existe, sinon false.
    Exemple : set.contains("sucre") renvoie true si "sucre" est dans le HashSet.

  • indexOf() : Méthode spécifique à une ArrayList qui retourne l’indice de la première occurrence d’un élément ou -1 s’il n’est pas trouvé.
    Exemple : list.indexOf("deux").

  • Collection : Objet regroupant plusieurs éléments, souvent d’un même type, permettant des opérations comme ajout, suppression, recherche, parcours. Exemples : ArrayList, HashSet.

  • Filtrage : Opération consistant à créer une nouvelle collection contenant uniquement les éléments qui satisfont une condition spécifique.
    Exemple : Récupérer tous les mots de plus de 4 caractères dans une liste.

📝 Points essentiels

  • Les méthodes add(), remove(), et contains() sont fondamentales pour manipuler efficacement une collection en Java.
  • add() peut ajouter un élément à la fin ou à une position spécifique dans une ArrayList, ou insérer un élément dans un HashSet (sans doublons).
  • remove() supprime un élément par sa référence ou son indice, en décalant les autres éléments pour maintenir la cohérence.
  • contains() permet de vérifier rapidement la présence d’un élément, facilitant la recherche sans parcourir explicitement la collection.
  • La différence entre add() et remove() réside dans leur rôle : insérer ou supprimer, respectivement.
  • La méthode indexOf() est spécifique aux listes ordonnées et permet de localiser un élément rapidement.

💡 À retenir

Les méthodes add(), remove(), et contains() sont essentielles pour gérer dynamiquement des collections en Java, permettant d’ajouter, supprimer ou rechercher efficacement des éléments selon les besoins du programme.

📊 Tableaux de Synthèse

AspectCollection ListCollection Set
Implémentation principaleArrayListHashSet
Ordre des élémentsMaintenu (ordre d'insertion)Non garanti (ordre aléatoire)
DoublonsAutorisésInterdits
Accès par indiceOui (get(index))Non
Performance rechercheO(n) (linéaire)O(1) en moyenne (hachage)
Utilisation typiqueListe ordonnée, accès par positionUnicité, recherche rapide

⚠️ Pièges & Confusions Fréquentes

  1. Confondre ArrayList (liste ordonnée, doublons autorisés) et HashSet (unicité, pas d’ordre garanti).
  2. Oublier que HashSet ne garantit pas l’ordre d’insertion, ce qui peut poser problème pour l’affichage.
  3. Utiliser == pour comparer des objets dans collections ; il faut utiliser equals().
  4. Tenter d’ajouter des types primitifs directement dans une collection ; il faut utiliser leurs classes enveloppantes (ex : Integer pour int).
  5. Croire que HashSet maintient l’ordre d’insertion, ce qui n’est pas le cas.
  6. Ne pas vérifier si un élément est déjà présent avec contains() avant d’ajouter, pour éviter des doublons non souhaités.
  7. Confondre public et private : public rend un membre accessible partout, private limite à la classe.

✅ Checklist Examen

  • Vérifier la compréhension de la différence entre List et Set.
  • Savoir quand utiliser ArrayList versus HashSet.
  • Maîtriser l’utilisation des méthodes add(), remove(), contains() pour collections.
  • Connaître la portée des modificateurs public, private, protected, et le défaut package-private.
  • Expliquer le principe d’encapsulation et son importance.
  • Identifier la structure adaptée pour garantir l’unicité des éléments.
  • Comprendre le fonctionnement du hachage dans HashSet.
  • Savoir accéder à un élément dans une ArrayList avec get().
  • Être capable de trier une collection (ex : tri rapide en Java).
  • Savoir parcourir une collection avec une boucle for ou foreach.
  • Connaître la différence entre types primitifs et classes enveloppantes.
  • Vérifier la maîtrise du vocabulaire spécifique : ArrayList, HashSet, add(), remove(), contains(), public, private, protected, package-private.
  • Vérifier la compréhension des principes d’encapsulation et de visibilité en Java.

Testez vos connaissances

Testez vos connaissances sur Gestion des collections et visibilité en Java avec 11 questions à choix multiples avec corrections détaillées.

1. Qu'est-ce que la visibilité en Java ?

2. Quelle est l'implémentation de la collection List en Java mentionnée dans le contenu?

Faire le QCM →

Révisez avec les flashcards

Mémorisez les concepts clés de Gestion des collections et visibilité en Java avec 22 flashcards interactives.

Visibilité — définition ?

Zone d'accessibilité d'un élément de classe.

Public — rôle ?

Accessible partout dans le programme.

Private — rôle ?

Accessible uniquement dans la classe.

Voir les flashcards →

Cours similaires

Crée tes propres fiches de révision

Importe ton cours et l'IA génère fiches, QCM et flashcards en 30 secondes.

Générateur de fiches