ISET BIZERTE
TD 1 : Révision
Exercice 1 [Utilisation des Exceptions]
La méthode parseInt est spécifiée ainsi :
public static intparseInt(Strings) throws NumberFormatException
Parameters:
s a String containing the intrepresentation to be parsed
Returns:
the integer value represented by the argument in decimal.
Throws:
NumberFormatException if the string does not contain a parsable integer.
1. Utilisez cette méthode pour faire la somme de tous les entiers donnés en
Publicité
argument de la ligne de commande, les autres arguments étant ignorés.
Exercice 2 [Création des Exceptions]
Écrire une classe Entreprise. Une entreprise a un nombre d’employés, un capital, un
nom,
une mission, et une méthode public String mission() qui renvoie la mission de
l’entreprise et qui déclare le lancement de l’exception SecretMissionException. On
aura également une
méthode public int capital() qui renvoie le capital et qui déclare le lancement de
l’exception
NonProfitException.
Écrire une classe EntrepriseSecrete qui hérite d’Entreprise et dont la méthode
mission lance l’exception SecretMissionException. Écrire une classe
Publicité
EntrepriseSansProfit qui hérite d’Entreprise et dont la méthode capital lance
l’exception NonProfitException.
Écrire une méthode qui prend en entrée un tableau d’entreprises et affiche la mission
et le capital de toutes les entreprises (quand cela est possible). Tester la méthode
sur les entreprises ”Ford”,”CIA”, ”Spectre”, ”CroixRouge”, ”Microsoft”, ”ParisDiderot”.
Exercice 3 [Utilisation des exceptions dans les constructeurs]
Toutou est une classe avec deux propriétés privées String nom et int nombrePuces.
Écrire un constructeur public Toutou (String n, int np) qui propage des exceptions de
type IllegalArgumentException lorsque le nom n est null ou lorsque le nombre de
puces np est négatif. Utiliser ce constructeur dans une méthode main pour contrôler
les appels
new Toutou ("milou", 4) et new Toutou ("medor", 11) et afficher les erreurs
Publicité
éventuelles lors de l’exécution des constructeurs.
Exercice 4 [Classes abstraites.]
1. Construisez une classe abstraite TabTrie qui correspond à un tableau trié d’objets.
Cette classe doit notamment contenir :
– un tableau d’Object, tab, initialisé avec une capacite définie par défaut (il faut
penser aussi à stocker le nombre d’Object contenus dans le tableau), et différentes
méthodes qui peuvent être implantées ou abstraites :
– une méthode plusGrand qui compare deux objects et renvoie true si le premier est
plus grand que le deuxième,
– une méthode ajouter qui insère un objet dans le tableau en respectant l’ordre
croissant,
1
Publicité
ISET BIZERTE
– une méthode toString qui renvoie une chaîne de caractères représentant le
tableau.
Lorsque la capacite du tableau est atteinte, l’insertion d’un nouvel élément lancera
une exception TabPlein.
2. Construisez la classe TabTriCouple qui hérite de TabTri et ordonne des objects
de type
Couple.
3. Une solution étaitelle envisageable uniquement avec des interfaces ? Quel est
l’intérêt ici des classes abstraites ?
2