Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
sio:bloc2:poo:ex [2024/09/03 11:24] – [Exemple :] jcheron | sio:bloc2:poo:ex [2024/09/03 11:28] (Version actuelle) – jcheron | ||
---|---|---|---|
Ligne 5: | Ligne 5: | ||
Objectif : Travailler sur l’instanciation, | Objectif : Travailler sur l’instanciation, | ||
- | Crée une classe **CompteBancaire** avec les attributs privés suivants : | + | Créer |
* titulaire (chaîne de caractères) | * titulaire (chaîne de caractères) | ||
Ligne 32: | Ligne 32: | ||
* Une méthode **addition** qui accepte deux ou trois nombres et retourne leur somme. Si un seul nombre est fourni, elle retourne ce nombre. | * Une méthode **addition** qui accepte deux ou trois nombres et retourne leur somme. Si un seul nombre est fourni, elle retourne ce nombre. | ||
* Une méthode **soustraction** qui accepte deux ou trois nombres. Si deux nombres sont fournis, elle retourne la différence entre le premier et le deuxième. Si trois nombres sont fournis, elle soustrait les deux derniers au premier. | * Une méthode **soustraction** qui accepte deux ou trois nombres. Si deux nombres sont fournis, elle retourne la différence entre le premier et le deuxième. Si trois nombres sont fournis, elle soustrait les deux derniers au premier. | ||
+ | |||
+ | |||
==== Exemple : ==== | ==== Exemple : ==== | ||
Ligne 48: | Ligne 50: | ||
Objectif : Travailler sur l' | Objectif : Travailler sur l' | ||
- | ==== Créer une classe Produit avec les attributs privés suivants : ==== | + | Créer une classe |
- | | + | |
- | | + | |
- | | + | |
- | ==== Implémenter les méthodes suivantes : ==== | + | Implémenter les méthodes suivantes : |
Ligne 68: | Ligne 70: | ||
* En quoi l' | * En quoi l' | ||
* Comment le constructeur facilite-t-il l’instanciation de nouveaux produits ? | * Comment le constructeur facilite-t-il l’instanciation de nouveaux produits ? | ||
+ | |||
+ | ==== Exercice 4 : Classe pour les Vecteurs ==== | ||
+ | |||
+ | Objectif : Travailler sur la surcharge des méthodes et l’instanciation. | ||
+ | |||
+ | Créer une classe **Vecteur** avec les attributs : | ||
+ | |||
+ | * x (flottant) | ||
+ | * y (flottant) | ||
+ | |||
+ | Implémenter les méthodes suivantes : | ||
+ | |||
+ | * Un constructeur qui initialise un vecteur avec deux coordonnées, | ||
+ | * Une méthode **ajouter** qui accepte un autre vecteur ou deux coordonnées séparées et retourne la somme des vecteurs ou de leurs coordonnées. | ||
+ | * Une méthode **soustraire** qui accepte un autre vecteur ou deux coordonnées séparées et retourne la différence des vecteurs ou de leurs coordonnées. | ||
+ | |||
+ | === Exemple : === | ||
+ | |||
+ | |||
+ | <sxh java> | ||
+ | Vecteur v1 = Vecteur(2, 3); | ||
+ | Vecteur v2 = Vecteur(5, 7); | ||
+ | System.out.println(v1.ajouter(v2)); | ||
+ | System.out.println(v1.ajouter(1, | ||
+ | </ | ||
+ | |||
+ | === Questions : === | ||
+ | |||
+ | |||
+ | * Comment la surcharge de la méthode ajouter permet-elle de gérer différents types d' | ||
+ | * En quoi le constructeur facilite-t-il l' |