TRUE

Page Nav

HIDE

Grid

GRID_STYLE

Examen en programmation orientée objet en JAVA

Question de cours : (5 pts) 1°/ Quel est le rôle de la gestion des exceptions ? Donner un exemple explicatif. 2°/ Quelle est la ...

Examen en programmation orientée objet en JAVA


Question de cours : (5 pts)
1°/ Quel est le rôle de la gestion des exceptions ? Donner un exemple explicatif.
2°/ Quelle est la différence entre une méthode d’instance et une méthode de classe ?
3°/ Quelle est la différence entre une classe et une interface ?
4°/ Décrire les classes suivante : Float,  Exception,  Object,  Date,  System.
5°/ Nommer et décrire trois sortes de relations pouvant exister entre deux classes.

Exercice 1 : (2 pts)
Le code suivant n’est pas correct sur le plan de conception. Identifier le problème et proposer une solution.
public interface X {
public int x();
}
public class Y implements X {
int z(){
return x;
}
private int x=0;
}

Exercice 2 : (2 pts)
Qu’affiche le programme ci-dessous ?
public static void main (String[] args)
{
int i,j,k,som;
for(som=0, i=1, j=-10, k=10; i<10 ; i=i+2)
{
  som += i/2 ;
  j+=k%i ;
  k--;
}
System.out.println(“ som=”+som+”\nj=”+j+”\tk=”+ k);
}

Exercice 3 : (6 pts)
On considère une banque X ayant les caractéristiques suivantes :
- La banque permet à ses clients d'ouvrir des comptes qu'elle gère.
- Un compte est défini par un numéro d'agence, un numéro de compte et un solde.
- La banque gère deux types de compte : des comptes courants et des comptes d'épargne.
- Les clients doivent pouvoir déposer et retirer de l'argent sur un compte et consulter le solde d'un compte.
- Un client doit pouvoir effectuer un virement d'un compte courant vers un autre de ses comptes  (courant ou épargne).
- Un client doit pouvoir effectuer un virement vers le compte d'un autre client en payant un prix donné par transaction.
- Les comptes d'épargne rapportent de l'argent : ils ont un taux d'intérêt T et chaque dépôt d'argent d'un montant M sur un compte épargne provoque une augmentation du solde de ce compte de M * T.

1°/ Identifier les classes représentant la banque et son fonctionnement.
2°/ Donner le code java de chacune de ces classes.

Exercice 4 : (5 pts)
Description du système :
Il existe une classe Véhicule, possédant deux attributs: marque étant du type String et couleur étant du type long. Elle possède également une méthode démarrer n’ayant aucun argument et qui retourne un type void. Cette méthode n’est pas définie dans la classe Véhicule.
Il existe un type interface Livreur, ayant une méthode faireLivraison, qui a un seul argument destination du type Destination et qui retourne un type void.
Il existe trois classes Voiture, Taxi et Bus étant des sous-classes de Véhicule.
Chacune de ces sous-classes possède sa propre implémentation de la méthode démarrer de la classe Véhicule. Les classes Taxi et Bus implémentent l’interface Livreur et elles possèdent chacun un attribut nbPassager étant du type int.
Il existe une classe Destination possédant trois attributs : nom, étant du type chaîne de caractères, ainsi que coordonnéeX et coordonnéeY, étant tous deux du type double. La classe Destination possède une méthode toString n’ayant aucun argument et qui retourne une chaîne de caractères. Elle possède également une méthode distance, ayant deux arguments dest1 et dest2, chacun étant du type Destination. Cette méthode retourne un type double.


Donner le diagramme de classes en précisant les méthodes, les attributs, les relations entre classes ainsi que les cardinalités et les rôles sur les relations..