Exercice Java corrigé affichage et comparaison d’objets – toString, equals

Exercice Java corrigé affichage et comparaison d’objets – toString, equals, tutoriel & guide de travaux pratiques en pdf.

Programmer la hiérarchie de classes « Rectangle coloré héritant de Rectangle » (vue en cours) en obéissant aux contraintes suivantes :

  • La classe Rectangle possède les attributs double largeur et hauteur.
  • La classe RectangleColore hérite de Rectangle et possède un attribut couleur de type String
  • Le code résultant doit pouvoir être testé avec le programme principal suivant :
class ToStringEq
{

    public static void main(String[] args)
        {
            System.out.println("Test 1 :");
            Rectangle rect = new Rectangle(12.5, 4.0);
            System.out.println(rect);
            System.out.println();

            System.out.println("Test 2: ");
            // le type de rect1 est RectangleColore 
            // l'objet contenu dans rect1 est de type RectangleColore
            RectangleColore rect1 = new RectangleColore(12.5, 4.0, "rouge");
            System.out.println(rect1);
            System.out.println();

            System.out.println("Test 3 :");

            // le type de rect2 est Rectangle 
            // l'objet contenu dans rect2 est de type RectangleColore
            Rectangle  rect2 = new RectangleColore(25.0/2, 8.0/2, new String("rouge"));
            System.out.println(rect2);

            System.out.println (rect1.equals(rect2)); // 1.
            System.out.println (rect2.equals(rect1)); // 2.
            System.out.println(rect1.equals(null));   // 3.
            System.out.println (rect.equals(rect1));  // 4.
            System.out.println (rect1.equals(rect));  // 5.
        }
}
  • et produire alors la sortie :
    Test 1 :
    Rectangle : 
     largeur = 12.5
     hauteur = 4.0
    
    Test 2: 
    Rectangle : 
     largeur = 12.5
     hauteur = 4.0
     couleur = rouge
    
    Test 3 :
    Rectangle : 
     largeur = 12.5
     hauteur = 4.0
     couleur = rouge
    true
    true
    false
    false
    false
  • Les méthodes toString et equals nécessaires ne doivent pas comporter de duplication de code.

La correction exercice Java (voir page 2 en bas)

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *