TP5 Q3

Programmation Avancée

Modérateur : Douin

cr2017
Messages : 16
Inscription : 10 oct. 2017 9:05

TP5 Q3

Message par cr2017 » 14 nov. 2017 12:49

Bonjour,

J'avoue être un peu confus devant les échecs à JNEWS sur la question 3 tu TP5:

There were 3 failures:
1) test_TreeSetFactoryComparable2(question3): exception : question3.TreeSetFactory.create()Ljava/util/Set;
2) test_HashSetFactory(question3): exception : question3.HashSetFactory.create()Ljava/util/Set;
3) test_TreeSetFactory(question3): exception : question3.TreeSetFactory.create()Ljava/util/Set;

Voici mes implémentations:

Code : Tout sélectionner

public class TreeSetFactory<E extends Comparable<E>> implements Factory<Set> {
    public TreeSet<E> create() {
        return new TreeSet<E>();
    }
}

public class HashSetFactory<E> implements Factory<Set> {
        public HashSet<E> create()  {
        return new HashSet<E>();
    }
}
Mes tests fonctionnent, je ne vois pas où JNEWS parvient à lever une exception lors de l'appel de la méthode create()? Mon TreeSetFactory n'accepte que des Elements comparables comme demandé dans l'énoncé. Y-a-t-il des notions cachées à vérifier que je n'aurais pas vu?

Cordialement,

CR

Douin
Messages : 200
Inscription : 18 mars 2009 15:46

Re: TP5 Q3

Message par Douin » 14 nov. 2017 14:08

Bonjour, pas de notions cachées, juste l'usage du patron Fabrique,

C'est une fabrique d'ensembles(Set<E>) alors vos classes devraient implémenter une Factory<Set<E>>

à suivre...

ps: La covariance que vous avez utilisée ne perturbe pas les tests JNEWS

cr2017
Messages : 16
Inscription : 10 oct. 2017 9:05

Re: TP5 Q3

Message par cr2017 » 14 nov. 2017 15:18

Merci j'ai corrigé les différentes signatures et c'est passé, je me suis vraiment pris les pieds dans le tapis avec la syntaxe sur cette question que je pensais facile... je vais me repasser le cours sur la généricité ce soir :)

En tout cas une bonne leçon, avec ce genre de question on n' a pas le compilateur pour nous avertir à l'avance de nos erreurs, ça permet de se mettre dans le bon état d'esprit pour l'examen sur papier (du moins je l'espère)

Cordialement,

CR

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité