0% ont trouvé ce document utile (0 vote)
22 vues2 pages

TD2 Programmation Orientée Objet Avancée

Le document présente des exercices de programmation orientée objet avancée, incluant des exemples de gestion d'exceptions en Java. Chaque exercice demande d'analyser le comportement de programmes spécifiques et d'implémenter un type abstrait de données (TAD) pour un ensemble d'objets. Les exercices couvrent la création de classes, la gestion des exceptions et la manipulation d'ensembles d'objets de différents types.

Transféré par

salahbensaid81
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
22 vues2 pages

TD2 Programmation Orientée Objet Avancée

Le document présente des exercices de programmation orientée objet avancée, incluant des exemples de gestion d'exceptions en Java. Chaque exercice demande d'analyser le comportement de programmes spécifiques et d'implémenter un type abstrait de données (TAD) pour un ensemble d'objets. Les exercices couvrent la création de classes, la gestion des exceptions et la manipulation d'ensembles d'objets de différents types.

Transféré par

salahbensaid81
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université de Blida 1 Faculté des Sciences Département d’informatique

Master 1 IL 2ème semestre 2024/2025

Programmation Orientée Objet Avancée


– TD 2 –

Exercice 1 :
Que fait ce programme ?

class Positif {
public Positif (int n) throws ErrConst{
if (n<=0) throw new ErrConst() ;
}
}

class ErrConst extends Exception{}

public class TstPos{


public static void main (String args[]){
System.out.println ("debut main") ;
Scanner scan = new Scanner(System.in);
boolean ok = false ;
while (!ok)
{ try{
System.out.print ("donnez un entier positif : ") ;
int n = scan.nextInt() ;
Positif ep = new Positif (n) ;
ok = true ;
}
catch (ErrConst e){
System.out.println ("*** erreur construction ***") ;
}
}
System.out.println ("fin main") ;
}

Exercice 2 :
Quel résultat fournit le programme suivant ?

class Erreur extends Exception {}

class A{
public A(int n) throws Erreur{
if (n==1) throw new Erreur() ;
}
}
public class Chemin2{
public static void main (String args[]){
f(true) ; System.out.println ("apres f(true)") ;
f(false) ; System.out.println ("apres f(false)") ;
}

public static void f(boolean ret){


try{
A a = new A(1) ;
}
catch (Erreur e){
System.out.println ("** Dans f - exception Erreur " ) ;
if (ret) return ;
}
System.out.println ("suite f") ;
}
}

Exercice 3 :
Quels résultats fournit ce programme ?

class Except extends Exception {}

public class Finally{


public static void f(int n){
try{
if (n!=1) throw new Except () ;
}
catch (Except e){
System.out.println ("catch dans f - n = " + n) ;
return ;
}
finally{
System.out.println ("dans finally - n = " + n) ;
}
}
public static void main (String args[]){
f(1) ;
f(2) ;
}
}

Exercice 4 :
- Implémenter le TAD Ensemble en utilisant un tableau d’éléments de type Object. On se limitera
aux opérations : taille, ajouter, retirer, contenir, union et intersection. L’implémentation devra
gérer les exceptions.
- Ecrire un programme qui permet de tester cette classe ; le programme devra créer un ensemble
dans lequel seront insérés des objets de type Integer, Double et String, puis affichera le nombre
d’instances de chaque type dans l’ensemble.

Vous aimerez peut-être aussi