SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
Enseignante: Nada Ben Latifa
1
Exercice Héritage en JAVA
Exercice 2 :
Ecrire une classe JAVA Forme où une forme est caractérisée par les
coordonnées de son centre (stockées dans un tableau).
N'oubliez pas d'implémenter les constructeurs (avec argument(s) et par défaut),
les accesseurs et modificateurs, ainsi que la méthode toString.
De plus définissez une méthode calculeSurface qui calcule la surface d'une
forme.
A partir de cette classe de base, dérivez ensuite les classes Rectangle et Ellipse
où un rectangle possède une longueur et une largeur, tandis qu'une ellipse
possède deux rayons. Dérivez enfin les classes Carre et Cercle.
Correction :
class Forme{
private int[] pos;
private double surface;
Forme() {
pos = new int[] {0,0};
surface = 0.;
}
public double calculerSurface() {
return 0.;
}
Enseignante: Nada Ben Latifa
2
public int getX() {
return pos[0];
}
public int getY() {
return pos[1];
}
public void setX(int v) {
pos[0] = v;
}
public void setY(int v) {
pos[1] = v;
}
public String toString(){
return "Position : " + getX() + " - " + getY() + "nSurface : " +
calculerSurface();
}
}
class Rectangle extends Forme {
private int longueur, largeur;
public double calculerSurface() {
return longueur * largeur; }
Enseignante: Nada Ben Latifa
3
public Rectangle(int lg, int la) {
longueur = lg;
largeur = la;
}
}
class Ellipse extends Forme {
private int r1, r2;
public double calculerSurface() {
return Math.PI * r1 * r2;
}
public Ellipse(int r1, int r2) {
this.r1 = r1;
this.r2 = r2;
}
}
class Cercle extends Ellipse {
public Cercle(int r) {
super(r,r);
}
}
Enseignante: Nada Ben Latifa
4
public class TestForme {
public static void main(String[] args) {
Forme a = new Rectangle(15,20);
a.setX(3);a.setY(56);
System.out.println(a);
a = new Cercle(1);
a.setX(100); a.setY(100);
System.out.println(a);
}}

Más contenido relacionado

La actualidad más candente

Rapport Projet Gestion des Etudiants avec C++
Rapport Projet Gestion des Etudiants avec C++Rapport Projet Gestion des Etudiants avec C++
Rapport Projet Gestion des Etudiants avec C++
Saâd Zerhouni
 
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
ENSET, Université Hassan II Casablanca
 

La actualidad más candente (20)

TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
 
Rapport Projet Gestion des Etudiants avec C++
Rapport Projet Gestion des Etudiants avec C++Rapport Projet Gestion des Etudiants avec C++
Rapport Projet Gestion des Etudiants avec C++
 
Chap 6 : classes et interfaces
Chap 6 : classes et interfacesChap 6 : classes et interfaces
Chap 6 : classes et interfaces
 
Polymorphisme (cours, résumé)
Polymorphisme (cours, résumé)Polymorphisme (cours, résumé)
Polymorphisme (cours, résumé)
 
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
 
Développement d'un site web de E-Commerce avec PHP (Première Partie)
Développement d'un site web de E-Commerce avec PHP (Première Partie)Développement d'un site web de E-Commerce avec PHP (Première Partie)
Développement d'un site web de E-Commerce avec PHP (Première Partie)
 
POO Java Chapitre 6 Exceptions
POO Java  Chapitre 6 ExceptionsPOO Java  Chapitre 6 Exceptions
POO Java Chapitre 6 Exceptions
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
Chapitre5: Classes et objets
Chapitre5: Classes et objetsChapitre5: Classes et objets
Chapitre5: Classes et objets
 
TD3-UML-Correction
TD3-UML-CorrectionTD3-UML-Correction
TD3-UML-Correction
 
POO Java Chapitre 2 Encapsulation
POO Java Chapitre 2 EncapsulationPOO Java Chapitre 2 Encapsulation
POO Java Chapitre 2 Encapsulation
 
Chp3 - Diagramme de Classes
Chp3 - Diagramme de ClassesChp3 - Diagramme de Classes
Chp3 - Diagramme de Classes
 
TP C++ : Correction
TP C++ : CorrectionTP C++ : Correction
TP C++ : Correction
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UML
 
Ch 01 poo
Ch 01 pooCh 01 poo
Ch 01 poo
 
Chapitre 3 elements de base de java
Chapitre 3  elements de base de javaChapitre 3  elements de base de java
Chapitre 3 elements de base de java
 
Support de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfiSupport de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfi
 
Examen Principal - Fondement Multimedia Janvier 2015
Examen Principal - Fondement Multimedia Janvier 2015Examen Principal - Fondement Multimedia Janvier 2015
Examen Principal - Fondement Multimedia Janvier 2015
 
Chp2 - Diagramme des Cas d'Utilisation
Chp2 - Diagramme des Cas d'UtilisationChp2 - Diagramme des Cas d'Utilisation
Chp2 - Diagramme des Cas d'Utilisation
 
Programmation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulationProgrammation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulation
 

Similar a Exercice 2 java Héritage (11)

Les vecteurs seconde2020.pdf
Les vecteurs seconde2020.pdfLes vecteurs seconde2020.pdf
Les vecteurs seconde2020.pdf
 
Les vecteurs seconde2020.pptx
Les vecteurs seconde2020.pptxLes vecteurs seconde2020.pptx
Les vecteurs seconde2020.pptx
 
Deuxième partie.pptx
Deuxième partie.pptxDeuxième partie.pptx
Deuxième partie.pptx
 
Ebook matlab
Ebook matlabEbook matlab
Ebook matlab
 
Matlab Travaux Pratique
Matlab Travaux Pratique Matlab Travaux Pratique
Matlab Travaux Pratique
 
Cours 4 dessin de graphs 2eme annees
Cours 4   dessin de graphs 2eme anneesCours 4   dessin de graphs 2eme annees
Cours 4 dessin de graphs 2eme annees
 
Héritage et Polymorphisme .pdf
Héritage et Polymorphisme .pdfHéritage et Polymorphisme .pdf
Héritage et Polymorphisme .pdf
 
Chapitre3TableauxEnCppV2019
Chapitre3TableauxEnCppV2019Chapitre3TableauxEnCppV2019
Chapitre3TableauxEnCppV2019
 
Math BAC 2010_Correction
Math BAC 2010_CorrectionMath BAC 2010_Correction
Math BAC 2010_Correction
 
Java uik-chap5-poo avance vf
Java uik-chap5-poo avance vfJava uik-chap5-poo avance vf
Java uik-chap5-poo avance vf
 
C# 7 - Nouveautés
C# 7 - NouveautésC# 7 - Nouveautés
C# 7 - Nouveautés
 

Exercice 2 java Héritage

  • 1. Enseignante: Nada Ben Latifa 1 Exercice Héritage en JAVA Exercice 2 : Ecrire une classe JAVA Forme où une forme est caractérisée par les coordonnées de son centre (stockées dans un tableau). N'oubliez pas d'implémenter les constructeurs (avec argument(s) et par défaut), les accesseurs et modificateurs, ainsi que la méthode toString. De plus définissez une méthode calculeSurface qui calcule la surface d'une forme. A partir de cette classe de base, dérivez ensuite les classes Rectangle et Ellipse où un rectangle possède une longueur et une largeur, tandis qu'une ellipse possède deux rayons. Dérivez enfin les classes Carre et Cercle. Correction : class Forme{ private int[] pos; private double surface; Forme() { pos = new int[] {0,0}; surface = 0.; } public double calculerSurface() { return 0.; }
  • 2. Enseignante: Nada Ben Latifa 2 public int getX() { return pos[0]; } public int getY() { return pos[1]; } public void setX(int v) { pos[0] = v; } public void setY(int v) { pos[1] = v; } public String toString(){ return "Position : " + getX() + " - " + getY() + "nSurface : " + calculerSurface(); } } class Rectangle extends Forme { private int longueur, largeur; public double calculerSurface() { return longueur * largeur; }
  • 3. Enseignante: Nada Ben Latifa 3 public Rectangle(int lg, int la) { longueur = lg; largeur = la; } } class Ellipse extends Forme { private int r1, r2; public double calculerSurface() { return Math.PI * r1 * r2; } public Ellipse(int r1, int r2) { this.r1 = r1; this.r2 = r2; } } class Cercle extends Ellipse { public Cercle(int r) { super(r,r); } }
  • 4. Enseignante: Nada Ben Latifa 4 public class TestForme { public static void main(String[] args) { Forme a = new Rectangle(15,20); a.setX(3);a.setY(56); System.out.println(a); a = new Cercle(1); a.setX(100); a.setY(100); System.out.println(a); }}