Skip to content

Firelack/JavaCourseReview

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 

Repository files navigation

☕ Projet de Révision - Programmation Orientée Objet en Java

Ce projet regroupe un ensemble de notes, de fiches de révision et d'exemples de code Java conçus pour préparer un contrôle sur les concepts de la Programmation Orientée Objet (POO).

🎯 À propos de ce projet

L'objectif principal est de centraliser les notions fondamentales de la POO en Java à travers des exemples pratiques et des fiches synthétiques. Le code est volontairement commenté et structuré pour faciliter la compréhension.

📚 Chapitres

  1. Introduction à la POO, bases
  2. Objets et classes
  3. Héritages
  4. Interfaces
  5. Généricité
  6. Classes internes
  7. Exceptions
  8. Bibliothèques de collections

📂 Structure du Projet

Le projet est organisé en plusieurs packages pour séparer les différents concepts abordés :

  • /src : Contient l'ensemble du code source Java.
    • /lesBases : Exemples sur les fondamentaux de la POO.
      • Personne.java : Une classe de base avec encapsulation, constructeurs et membres static.
      • Etudiant.java : Une sous-classe de Personne pour illustrer l'héritage.
      • Main.java : Démontre la création d'objets, les boucles, les tableaux et le transtypage (cast).
    • /classeAbstraite : Un cas pratique sur l'abstraction.
      • Animal.java : Une classe abstraite servant de modèle.
      • Chien.java et Chat.java : Des classes concrètes qui héritent d'Animal.
      • Main.java : Montre l'utilisation du polymorphisme avec des classes abstraites.
    • /lesInterfaces : Un cas pratique sur les interfaces.
      • Reparable.java : Une interface avec une méthode abstraite.
      • Ravitaillable.java : Une autre interface avec une méthode abstraite.
      • Voiture.java : Une classe qui implémente Reparable.java et Ravitaillable.java
      • Velo.java : Une classe qui implémente Reparable.java.
      • Main.java : Montre l'utilisation des interfaces.
    • /genericite : Un cas pratique sur la généricité.
      • Boite.java : Une classe 'conteneur' générique simple <T>.
      • Stagiaire.java : Une classe d'exemple qui implémente Comparable pour le test de contrainte.
      • Main.java : Démontre l'utilisation de la classe Boite<T> et d'une méthode générique avec contrainte.
    • /classesInternes : Un cas pratique sur les classes internes.
      • ClasseExterne.java : Exemple de classe interne non-statique.
      • GestionCoordonnees.java : Exemple de classe interne statique privée.
      • Main.java : Démontre l'utilisation des classes internes, anonymes et des expressions lambda.
    • /exceptions : Un cas pratique sur les exceptions.
      • DebitImpossibleException.java : Une exception "checked" personnalisée.
      • Compte.java : Une classe qui utilise throw et throws.
      • Main.java : Démontre l'utilisation de try-catch pour gérer les erreurs.
    • /collections : Un cas pratique sur les collections.
      • Main.java : Démontre l'utilisation de List, Set et Map et de la classe Collections.
    • /infoTexte : Contient les fiches de révision au format Markdown.
      • infoSupplementaires.md : Fiche sur les concepts clés (visibilité, mots-clés, héritage, polymorphisme, etc.).
      • classesMethodes.md : Fiche récapitulative des méthodes utiles des classes standards de Java (String, Scanner, Arrays, etc.).

💡 Concepts Abordés

Ce projet couvre les notions suivantes :

  • Classes et Objets : Création et instanciation d'objets.
  • Encapsulation : Utilisation des modificateurs d'accès (private, public) et des getters/setters.
  • Héritage : Utilisation des mots-clés extends et super pour créer des hiérarchies de classes.
  • Polymorphisme et Transtypage : Manipulation d'objets via des références de super-classe et utilisation de instanceof.
  • Abstraction : Création et utilisation de classes et méthodes abstraites.
  • Membres static : Attributs et méthodes appartenant à la classe plutôt qu'aux instances.
  • Bases de Java : Boucles (for, while), tableaux, switch, opérateurs, etc.
  • Interfaces : Création et utilisation d'interfaces.
  • Généricité : Utilisation de la généricité
  • Classes internes : Création et utilisation de classes internes.
  • Exceptions : Gestion des exceptions et des erreurs.
  • Collections : Utilistation des collections

🚀 Comment Utiliser

  1. Cloner le projet (Ou télécharger le dossier):

    git clone https://github.com/Firelack/JavaCourseReview.git
  2. Ouvrir dans un IDE : Ouvrez le projet dans un IDE Java comme IntelliJ IDEA ou Eclipse.

  3. Exécuter le code : Chaque package (lesBases et classeAbstraite, etc.) contient son propre fichier Main.java qui peut être exécuté indépendamment pour tester les concepts qui lui sont associés. Ce dossier contient également un dossier infoTexte qui contient des fichiers de texte sur les notions et choses à retenir.

About

This is a little project that contain all java course I have done (code and comment are in French)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages