Génie Logiciel - Java (IGL245)
Thème :
Junior
1 vues ·5/10 leçons

9. Concepts complémentaires

9.1 Paquets (Packages)

Les packages permettent d’organiser les classes en dossiers logiques et d’éviter les conflits de noms.

package com.mondomaine.monprojet;
public class Exemple { ... }

9.2 Java Collections et Generics

  • Collections : Fournissent des structures de données dynamiques (List, Set, Map) plus flexibles que les tableaux classiques.
  • Génériques : Permettent de définir le type d’objets contenus dans la collection (<String>, <Personne>), garantissant la sécurité des types.
List<String> liste = new ArrayList<>();
liste.add("Bonjour");

10. Conclusion

La programmation orientée objet en Java repose sur :

  1. Classes et Objets pour modéliser le réel.
  2. Encapsulation pour la sécurité.
  3. Héritage et Polymorphisme pour la réutilisabilité et la flexibilité.
  4. Abstraction/Interfaces pour les contrats.
  5. Exceptions pour la robustesse.

Exercice 5 : Utilisation des Collections et des Génériques

Objectif : Créer une List (ArrayList) de Personne. Ajouter plusieurs instances, puis trier la liste par nom (via Comparator) et enfin afficher les informations de chaque personne.

Solution :

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

public class GestionPersonnes {

    public static void main(String[] args) {
        // Création d'une liste de Personne
        List<Personne> personnes = new ArrayList<>();
        personnes.add(new Personne("Alice", 30));
        personnes.add(new Personne("Bob", 40));
        personnes.add(new Personne("Charlie", 25));

        // Tri de la liste par ordre alphabétique du nom
        // Utilisation d'une classe anonyme ou lambda pour le Comparator
        Collections.sort(personnes, new Comparator<Personne>() {
            @Override
            public int compare(Personne p1, Personne p2) {
                return p1.getNom().compareTo(p2.getNom());
            }
        });

        // Affichage
        for (Personne p : personnes) {
            p.saluer();
        }
    }
}

Prêt à passer à la suite ?

Vous avez terminé cette leçon sur 9. Concepts complémentaires. Continuez votre apprentissage avec la prochaine leçon ou explorez d'autres formations.