Le livre de JAVA premier langage Avec 109 exercices corrigés
Cet ouvrage vous expliquera aussi comment réaliser des applications Java dotées d'interfaces graphiques conviviales grâce au logiciel libre NetBeans. Enfin
175 exercices corrigés - Couvre Java 8 (Noire) (French Edition)
• Interfaces ; définition implémentation ; variables de type interface ; constantes d'une interface ; dérivation d'une interface. • Classes enveloppes
TD7 : Exceptions et Itérateurs
击 Exercice 4. On consid`ere l'interface Java suivante : 1 package exo4;. 2. 3 public interface IterateurTabInt {. 4 public int suivant();. 5 public int
TD n 6 Un peu de classe abstraite 1 Interfaces vs Classes
statique et abstraite ? Correction : Java < 8 : une interface ne peut contenir que des méthodes publiques abstraites Exercice 3 On ne s'intéresse pour l ...
Exercice 1.2
Le code Java affichera hello + l'adresse de l'objet en question. Page 19. CORRIGÉ DES EXERCICES DE L'OUVRAGE. « LA PROGRAMMATION ORIENTÉE OBJET » DE
TD et TP du Module POA licence Informatique 3
Pour le TP : Exo2_a_completer.java. Exercice 3 : TD et TP. Écrire une La nouvelle classe s'appellera Calculatrice2. Exercice 7 : TP. Réalisez une interface ...
1 Corrigé de Examen Programmation par les Objets en Java 1A Juin
Exercice 2). Soit une interface Java I et deux classes C1 et C2 qui l'implémentent. Les quelles des déclarations suivantes sont justes ou fausses ? Pourquoi
TD 7 IJA Les interfaces graphiques JAVA
Exercice (à programmer). tfPanel. chPanel. lstPanel. cbPanel. rbPanel. btPanel. MenuBar. Label. Checkbox. Button. TextField. Choice. List. Page 10. Tarak Chaari
Exercices de Programmation Orientée Objet en Java
À quel affichage conduit l'exécution du programme (éventuellement corrigé)? public interface Affichable{ public java.awt.Color getColor(); public java ...
Corrigés des exercices sur les interfaces
Corrigés des exercices sur les interfaces. Exercice 5.1.1 Animaux. Certain animaux peuvent crier d'autres sont muets. On représentera le fait de crier au
Corrigés des exercices sur les interfaces
Corrigés des exercices sur les interfaces. Exercice 5.1.1 Animaux écrire une interface contenant la méthode permettant de crier.
1 Corrigé de Examen Programmation par les Objets en Java 1A Juin
ligne 4. Pas besoin d'indiquer l'extension .class. Exercice 2). Soit une interface Java I et deux classes C1 et C2 qui l'implémentent. Les quelles des.
Exercices de Programmation Orientée Objet en Java
Ligne 27 le i de Toto est privé
175 exercices corrigés - Couvre Java 8 (Noire) (French Edition)
175 exercices corrigés pour maîtriser Java Interfaces ; définition implémentation ; variables de type interface ; constantes d'une interface ...
Le livre de JAVA premier langage Avec 109 exercices corrigés
Tableaux•Listes et dictionnaires•Archivage des données•Gestion des exceptions •Librairies AWT et Swing•Fenêtre clavier et souris•Interface graphique avec
Exercices en Java
Travaux pratiques en Java. Séance 3: Interfaces et Classes Abstraites. Najib Tounsi. Les Interfaces. Les Classes Abstraites. Classe Abstraite vs Interface.
TP #1 Langage Java / Corrigé Exercice 1 : Concepts de la
7. Un regroupement de méthodes sans implémentation est appelé une interface. Exercice 2 : Classes et Interfaces. Etablissez une interface 'Car
Construction dinterfaces graphiques en Java Le but de cet exercice
Le but de cet exercice est d'écrire un code Java de la construction de l'interface graphique et de la réaction des actions de l'utilisateur sur une
EN -TETE SUJETS
Exercice 1. Soit l'interface VecteurObject. public interface VecteurObject. { public void ajouter(int indice Object élement) ;.
Feuille 1 - Exercices de révision
Algorithmique et programmation java Dans cet exercice on se propose d'écrire les classes utiles à la ... On considère l'interface suivante :.
[PDF] Corrigés des exercices sur les interfaces
Corrigés des exercices sur les interfaces Exercice 5 1 1 Animaux Certain animaux peuvent crier d'autres sont muets On représentera le fait de crier au
[PDF] Exercices en Java
Exercices: Faire une hiérarchie de plus d'une classes abstraites Vérifier les règles énoncée précédemment Classe Abstraite vs Interface Une interface ne peut
Exercice Java corrigé héritage et interfaces – primes de risque
Exercice Java héritage et interfaces – primes de risque tutoriel guide de travaux pratiques en pdf Cet exercice vous permettra de concevoir une
[PDF] 175 exercices corrigés - Couvre Java 8 (Noire) (French Edition)
175 exercices corrigés pour maîtriser Java Conçu pour les étudiants en informatique ce recueil d'exercices corrigés est le complément idéal de Programmer
Exercice interface et classes abstrait Cours pdf
Exercices: Faire une hiérarchie de plus d'une classes abstraites Vérifier les règles énoncée précédemment Classe Abstraite vs Interface Une interface ne peut
[PDF] Exercices de Programmation Orientée Objet en Java - MIS
Ligne 27 le i de Toto est privé donc invisible ici Une fois corrigé l'affichage est 2 1 Exercice 3 6 - solution : public interface List { public
[PDF] 1 Corrigé de Examen Programmation par les Objets en Java 1A Juin
ligne 4 Pas besoin d'indiquer l'extension class Exercice 2) Soit une interface Java I et deux classes C1 et C2 qui l'implémentent Les quelles des
[PDF] EN -TETE SUJETS
Exercice 1 – Vecteur Extensible d'objets 4 points (2 points) Ecrire la classe VecteurObjectImpl qui est une implémentation de l'interface
[PDF] Feuille 1 - Exercices de révision - lamsade
Algorithmique et programmation java DEMIEE 2ème Année 2013-2014 dans l'exercice précédent 3 Sujet de TP : Création d'une interface graphique
[PDF] Le livre de JAVA premier langage Avec 109 exercices corrigés
Cet ouvrage vous expliquera aussi comment réaliser des applications Java dotées d'interfaces graphiques conviviales grâce au logiciel libre NetBeans Enfin
Comment Ecrire une interface en java ?
On dit qu'une classe implémente une interface, si elle définit les méthodes de l'interface. En java on déclare qu'une classe implémente une interface avec le mot clé implements . Une interface définit un type (comme une classe) et les classes qui implémentent cette interface sont donc des sous-types.Quand on utilise une interface java ?
Les interfaces servent à créer des comportements génériques: si plusieurs classes doivent obéir à un comportement particulier, on créé une interface décrivant ce comportement, on est la fait implémenter par les classes qui en ont besoin.Quelle est la différence entre une interface et une classe abstraite ?
Classes abtraites et interfaces ont chacune une fonction bien distincte : les classes abstraites servent à factoriser du code, tandis que les interfaces servent à définir des contrats de service.- Créer une interface peut-être utile si ces dernières ne devraient pas être accessibles. Lorsque du code interagit avec le système de fichier, du réseau ou n'importe quel système tiers, la mise en place d'une interface est essentielle pour se découpler de l'implémentation et faciliter l'écriture de tests.
Pôle LicenceANN
ÉE UNIVERSITAIRE 2008/2009
SESSION 1 DE PRINTEMPS 2009
Parcours : CSB4, MHT43 UE : INF252Epreuve : Programmation 2
Date : 19 Mai 2009 Heure : 11H Durée : 1h 30
Documents : Tous documents interdits
Vous devez r
épondre sur une copie d'examen comportant tous
les renseignements administratifs. Le sujet comporte 4 pages.Epreuve de Monsieur Domenger JeanPhilippe
La notation tiendra compte de la clart
é et de la précision de l'écriture des réponses. Lisez attentivement le sujet certaines questions font appelà des connaissances du cours indépendamment
des exercices. Bar ème indicatif·Exercice 1 - Vecteur Extensible d'objets 4 points.·Exercice 2 - Algorithme d'ex
écution des services d'instances 6 points·Exercice 3 - Exercice de synthèse. 10 pointsExercice 1.
Soit l'interface VecteurObject.
public interface VecteurObject public void ajouter(int indice, Objectélement) ;
// ajoute élément à la position indice dans le vecteur. public void supprimer(int indice) ; // met null à la position indice dans le vecteur public int longueur() ; // retourne la position maximale d'un élément non null présent dans le vecteur.public int appartient(Objectélément) ;
// retourne la position du premier objet dont l'adresse estégale à // celle de é
lément ou 1 sinon. ·(2 points) Ecrire la classe VecteurObjectImpl qui est une implémentation de l'interface
VecteurObject et qui fixe la taille du Vecteur au moment de sa construction. Les exceptions n'ayant pas été traitées les cas d'erreurs seront simplement signalés parSystem.out.println(" ERREUR ») ;
·public class Vecteur
· private int taillePhysique;
· private int indiceMaximum;
· private Object[] donn
ées;·
· public Vecteur(int taille)
·données = new Object[taille];·
·indiceMaximum = 1;
·taillePhysique = taille;
· public void ajouter(int indice, Object element)·if(indice >= taillePhysique || indice < 0)
· System.out.println("ERREUR");
·else{
· donn
ées[indice] = element;· if((element != null) && (indice > indiceMaximum))·indiceMaximum = indice;
· public void supprimer(int indice)
·if(indice >= taillePhysique || indice < 0)
· System.out.println("ERREUR");
·else{
· donn
ées[indice] = null;· if(indiceMaximum == indice)· indiceMaximum = 1;
· for(int i = taillePhysique; i >= 0; i)
·if(donn
ées[i] != null)· {
·indiceMaximum = i;
·return;
· public int longueur()
·return indiceMaximum;
· public int appartient(Object element)
·for(int i = 0; i < taillePhysique; i++)
· if(element == donn
ées[i])·return i;
·return 1;
·(2 points) Dans ce cas, VecteurObject est un conteneur de références d'objet. Quelles seraient les
modificationsà apporter pour en faire un conteneur d'états d'objets. Expliquez les modifications.·Il faut utiliser le service clone lorsqu'on ins
ère un objet et le service equals lorsqu'on recherche un objet dans le vecteur. Le service cloneétant protected dans la classe Object il
est n écessaire de déclarer comme Cloneable l'objet que l'on insère dans le vecteur. ··public class Vecteur
· private int taillePhysique;
· private int indiceMaximum;
· private Object[] donn
ées;·
· public Vecteur(int taille)
·donn
ées = new Object[taille];·
·indiceMaximum = 1;
·taillePhysique = taille;
· public void ajouter(int indice, Cloneable element)·if(indice >= taillePhysique || indice < 0)
· System.out.println("ERREUR");
·else{
· donn
ées[indice] = element.clone();
· if((element != null) && (indice > indiceMaximum))·indiceMaximum = indice;
· public void supprimer(int indice)
·if(indice >= taillePhysique || indice < 0)
· System.out.println("ERREUR");
·else{
· donn
ées[indice] = null;· if(indiceMaximum == indice)· indiceMaximum = 1;
· for(int i = taillePhysique; i >= 0; i)
·if(donn
ées[i] != null)· {
·indiceMaximum = i;
·return;
· public int longueur()
·return indiceMaximum;
· public int appartient(Object element)
·for(int i = 0; i < taillePhysique; i++)
· if(element.equals(données[i]))
·return i;
·return 1;
Exercice 2.
(0,5 point) Donner une d éfinition du concept de surcharge en Java. Justifiez son intérêt. La surcharge est la possibilit é le même nom dans une même classe pour identifier des services différents. Pour que la surcharge soit licite, il faut que les services de même nom différent par le
nombre ou le type des param ètres. Le type de retour n'est pas distinctif dans la surcharge. L'intéret de la surcharge est d'am éliorer la compréhension d'une classe, puisque nous pouvons utiliser le m ême nom pour des services qui ont la même siginification.(0,5 point) Donner une d éfinition du concept de redéfinition en Java. Justifiez son intérêt.La redéfinition est la possibilité d'utiliser la même signature dans un type et sans un soustype. La
fonction red éfinit au niveau du sous type peut changer, spécialiser le comportement d'un service du sur type. La red éfinition couplée avec l'algorithme de sélection permet d'obtenir la propriété suivante : Un objet pr éserve son comportement indépendamment du type qui le déclare. ·(0,5 point) Donner une définition de type déclaré et de type réel. Précisez cette notion sur un exemple. Le type d
éclaré est le type de la variable qui est utilisé pour référencé un objet. Le type réel d'un objet est le type de la classe qui l'a instancié.Ex: Animal a = new Cochon(). Le type d
éclaré de a est Animal, le type réel de a est Cochon.(1,5 points) Rappelez les deux étapes de l'algorithme d'exécution des services d'instances en Java. Résolution de la surcharge. En partant du type déclaré on collecte l'ensemble des services qui
ont le nom recherch é sur l'ensemble du haut de l'arbre d'héritage. On supprime celles qui n'ont pas la bonne arit é et qui ne sont pas compatibles avec l'appel. Si il n'en reste aucune, il y a une erreur de compilation. Ensuite parmis les candidates restantes ontévalue le coût de
conversion. Si il y a plusieurs fonctions de coût minimal, il y a une erreur de compilation.
Sinon il n'y a qu'une seule signature qui est conserv ée, la phase de compilation est correcte. Ex écution du service. En partant du type réel de l'objet, on recherche dans le haut de l'arbre d'héritage un service qui correspond exactement à la signature sélectionnée à l'étape 1. On
ex écute le premier service rencontré qui a exactement cette signature. (3 points) Soient les hiérarchies de classes suivantes : class A {} class B extends A{} class C extends B{} class X { public void m(B b){ System.out.println(" X param B ») ; public void m(A a){ System.out.println(" X param A ») ; class Y extends X { public void m(C c) {System.out.println(" Y param C ») ; public void m(B b) {System.out.println(" Y param B ») ; class Z extends Y{ public void m(B b) {System.out.println(" Z param B ») ; public void m(A a) {System.out.println(" Z param A») ; Pour le code ci-dessous, donner pour chacun des 9 appels, les résultats donnés par chacune des étapes de l'algorithme d'exécution des services d'instances en Java. public static void main (String [] argv)C c = new C() ; B b = c ; A a = c ;
Z z = new Z() ; Y y = z ; X x = z ;
x.m(a) ; // appel 1 y.m(a) ; // appel 2 z.m(a) ; // appel 3 x.m(b) ; // appel 4 y.m(b) ; // appel 5 z.m(b) ; // appel 6 x.m(c) ; // appel 7 y.m(c) ; // appel 8 z.m(c) ; // appel 9 appel 1:Etape 1: signature s
électionnée m(A a)Etape 2: Resultat Z param A appel 2Etape 1: signature s
électionnée m(A a)Etape 2: Resultat Z param A appel 3Etape 1: signature s
électionnée m(A a)Etape 2: Resultat Z param A appel 4Etape 1: signature s
électionnée m(B b)Etape 2: Resultat Z param B appel 5Etape 1: signature s
électionnée m(B b)Etape 2: Resultat Z param B appel 6Etape 1: signature s
électionnée m(B b)Etape 2: Resultat Z param B appel 7Etape 1: signature s
électionnée m(B b)Etape 2: Resultat Z param B appel 8Etape 1: signature s
électionnée m(C c)Etape 2: Resultat Y param C appel 9 Etape 1: signature sélectionnée m(C c)Etape 2: Resultat Y param CExercice 3.
Soit une partie du code de l'interface Point2D
public interface Point2D public Point2D dupliquer() ; // cr ée un nouveau Point2D dans le même que le sélecteur. public boolean equals(Object o) ; // Compare si deux instances de Point2D sont dans le même état
public void deplacer(double x, double y) ; // d éplace le sélecteur aux coordonnées cartésiennes (x,y) }Une interface FormeCentr
ée propose deux services qui sont déplacerCentre et dessiner. Cette interfaceFormeCentr
ée est implémentée partiellement par une classe abstraite FormeCentréeImpl. Cette classe abstraite contient une variable d'instance protected Point2D centreForme ; 2/4Elle factorise le code du service d
éplacerCentre qui consiste à déplacer la variable centreForme. Dans cette classe abstraite le service dessiner et abstrait. Les classes Carré et Cercle sont deux
implémentations de FormeCentrée qui héritent de FormeCentréeImpl et qui implémentent leur propre
service d'instance dessiner. On se contentera pour dessiner un Carré (resp un Cercle) d'afficher sur la
sortie standard " je suis un carré (resp. un cercle) » .
·(1 point) Ecrire les classes de FormeCentr
éeImpl, Carré et Cercle. ATTENTION, Le
centre d'une FormeCentr ée ne peut être déplacé que par un service de FormeCentrée ou des sous classes de FormeCentrée.·(1 point). Red
éfinir le service d'instance equals sur la hiérarchie de classe de FormeCentrée. public abstract FormeCentreeImpl implement FormeCentree protected Point2D centreForme; protected FormeCentreeImpl(Point2D p) centreForme = p.dupliquer(); public deplacerCentre(double x, double y) centreForme.deplacer(x,y); public boolean equals(Object o) if( o instanceof FormeCentreImpl)FormeCentreeImpl tmp = (FormeCentreeImpl) o;
return tmp.centreForme.equals(centreForme); return false; public class Carre extends FormeCentreeImpl protected double cote; public Carre(Point2D ce, double c) super(ce); cote = c; public void dessiner()System.out.println("Je suis un CarrÈ"); }
public boolean equals(Object o) if( o instanceof Carre)Carre tmp = (Carre) o;
return super.equals(tmp) && tmp.cote == cote; return false; public class Cercle extends FormeCentreeImpl protected double rayon; public Cercle(Point2D ce, double r) super(ce); rayon = r; public void dessiner()System.out.println("Je suis un Cercle");
public boolean equals(Object o) if( o instanceof Cdercle)Cercle tmp = (Cercle) o;
return super.equals(tmp) && tmp.rayon == rayon; return false; Une interface Animation propose trois services d'instances qui sont reprendreAnimationAuDébut, avancerAnimation, animationTerminée. L'interface Animation est :
public interface Animation public void reprendreAnimationAuDébut() ;
public void avancerAnimation() ; public boolean animationTerminée() ;
Cette interface Animation est impl
émentée par deux classes qui sont AnimationConstanteImpl etAnimationAcc
éléréeImpl. Les services de ces deux classes font évoluer un point2D qu'elles reçoivent
en paramètre au moment de leur instanciation et qu'elles stockent par référence. En reprenant les sp
écifications du début de l'exercice, on s'intéresse maintenant à composer les deux hiérarchies. ·(1 point) On s'int
éresse à la définition du type CarréAnimé qui est un Carré et une Animation.Expliquer pourquoi Carr
éAnimé ne peut pas être une classe instanciable. Donner le code de la classe abstraite Carr éAnimé dans ce cas. Précisez et justifiez pourquoi certains services de cette classe sont nécessairement abstraits. Un carr
éAnimé est nécessairement un Carré, mais on ne peut pas préciser qu'elle animation permet au carr
éAnimé de fonctionner. Donc la classe CarréAnimé est une classe abstraite qui ne peut pas impl
émenter les services de l'interface Animation. Il faudrait que les spécifications sur CarréAnimée soit plus précise. Comme l'interface Animation n'est pas Cloneable ou ne possède pas de service dupliquer on ne peut dans ce cas utiliser la d
élégation. abstract public class CarreAnime extends Carre implements Animation public abstract void reprendreAnimationAuD ébut(); public abstract void avancerAnimation(); public abstract boolean animationTerminÈe();}
·(5 points) On voudrait maintenant d
éfinir une classe CarréAnimationConstante.
1.(1 point) Rappelez la définition de l'héritage de type et de ses propriétés. Rappelez la
définition de l'héritage de code et de ses propriétés. Existe til en Java de l'héritage
multiple de code ? ■L'h éritage de type se traduit par la relation " est une sorte de » ou " est un ».Les deux propriétés sont:1.On peut r
éférencer par une variable du sur type une variable du soustype, (principe de substitution)2.L'interface fonctionnelle publique du surtype est incluse dans l'interface
fonctionnelle publique du sous type. ■L'h éritage de code, c'est d'abord de l'héritage de type plus la possibilité d'utiliser partiellement ou totalement au niveau du sous type le code du sur type. ■En java, il n'y a que de l'h éritage simple de code. C'est à dire qu'une classe ne peut h ériter du code que d'une seule classe. (1 point) Expliquez pourquoi en respectant les sp écifications précédentes, il est impossible de d éfinir une classe CarréAnimationConstante qui soit à la fois une sorte de Carr é et d'AnimationConstanteImpl. Carré et AnimationConstanteImpl sont deux classes qui définissent un type. Comme en Java, il n'y a pas d'héritage multiple de codeet comme il n'y a pas une interface qui repr
ésente soit le type Carré soit le type AnimationConstante et de Carr é.2.(3 points) On ajoute une interface AnimationConstante qui est un sur type de AnimationConstanteImpl et sous type de Animation. Donner dans ce cas, la définition
Java du type Carr
éAnimationConstante qui est un sous type de Carré et deAnimationConstante. Proposer alors une impl
émentation de telle sorte que la classe
Carr éAnimationConstante soit instanciable. Dans ce cas, l'animation se chargera de déplacer le centre du Carré.public class CarreAnimation extends Carre implements AnimationConstante
AnimationConstanteImpl delegAnimation ;
Public CarreAnimation(Point2D p, double cote)
Super(p,cote) ;
delegAnimation = new AnimationConstante(centreForme) ; public void reprendreAnimationAuDébut(){
delegAnimation. reprendreAnimationAuDébut() ;
public void avancerAnimation() delegAnimation. avancerAnimation(). public boolean animationTerminée(){
return delegAnimation. animationTerminée()}
3/4·(1 point). En vous inspirant de la question précédente ajoutez les classes et interfaces qui vous
semblent n écessaires pour pouvoir insérer dans les spécifications les classesCarreAnimationAcc
élérée, CercleAnimationConstante, CercleAnimationAccélérée. Donnez un schéma qui présente les relations (héritage de type, héritage de code, concrétisation, délégation)
entre tous les types de cet exercice et ceux que vous avez ajout és. ·(1 point) Est ce qu'il est possible en utilisant la délégation d'écrire une classe
CarreAnimationImpl qui fournirait de la factorisation pour code les classesCarreAnimationConstante et CarreAnimationAccel
érée. Donnez l'implémentation de cette
classe.Oui il faut que cette classe prenne dans un constructueur une Animation.Héritage de type ou de code
Héritage de type ou de code ConcrétisationDélégationAnimation
Animation
ConstanteAnimation
AccéléréeAnimation
ConstanteImplAnimation
AccéléréeImplForme
FormeCentreeImpl
CercleCarre
CarreAnimation
Constante
abstract public class CarreAnimationImpl extends Carre implements AnimationConstanteAnimationConstanteImpl delegAnimation ;
protected CarreAnimationImpl(Point2D p, double cote, AnimationConstant anim)Super(p,cote) ;
delegAnimation = anim ; public void reprendreAnimationAuDébut(){ delegAnimation. reprendreAnimationAuDébut() ;
public void avancerAnimation()quotesdbs_dbs6.pdfusesText_11[PDF] typologie du changement
[PDF] changement imposé
[PDF] changement construit
[PDF] conduite du changement ppt
[PDF] changement prescrit définition
[PDF] pratiques de la conduite du changement comment passer du discours ? l action
[PDF] changement adaptatif
[PDF] exemple de conduite de changement en entreprise
[PDF] prendre conscience de soi est-ce devenir étranger ? soi corrigé
[PDF] etre etranger a soi meme
[PDF] prendre conscience de soi est ce devenir soi meme
[PDF] prendre conscience de soi est-ce devenir étranger ? soi introduction
[PDF] prendre conscience de soi c'est devenir étranger ? soi
[PDF] peut on etre etranger a soi meme