Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1405 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  generics : unchecked conversion

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

generics : unchecked conversion

n°955329
bobuse
Posté le 18-01-2005 à 10:58:52  profilanswer
 

Encore les generics http://forum-images.hardware.fr/icones/message/icon10.gif
 
Bon alors aujourd'hui, j'ai du mal à piger un warning qui me dit que mon code nécessite une "unchecked conversion". Pour moi une "unchecked conversion", c'est quand on affecte un raw type à un type paramétré. Or là ... voyez-vous même (et laissez les planches à clous à l'entrée SVP :o )
 
Ce code déclenche un warning :

Code :
  1. public interface JobInterface1<T> {
  2.     public T doJob();
  3. }
  4. public class JobClass1 implements JobInterface1<Integer> {
  5.     // Type safety: The return type Integer of the method plop() of type JobClass1 needs unchecked
  6.     // conversion to conform to the return type T of inherited method
  7.     public Integer doJob() { return null; }
  8. }


 
J'arrive à court-cicuiter ce warning, mais ça me suffit pas, j'aimerai comprendre.
Ça, ça marche :

Code :
  1. public interface JobInterface2<T> {
  2.     public <T> T doJob();
  3. }
  4. public class JobClass2 implements JobInterface2<Integer> {
  5.     public <Integer> Integer doJob() { return null; }
  6. }


Message édité par bobuse le 18-01-2005 à 18:21:59

---------------
get amaroK plugin
mood
Publicité
Posté le 18-01-2005 à 10:58:52  profilanswer
 

n°955743
the real m​oins moins
Posté le 18-01-2005 à 18:17:39  profilanswer
 

je pense que ce genre de problème est nettement plus simple à comprendre avec des cas concrets, ça permet de mettre des noms et des images sur les concepts :)

n°955751
bobuse
Posté le 18-01-2005 à 18:23:38  profilanswer
 

Si ça peut t'aider ...
j'ai édité


Message édité par bobuse le 18-01-2005 à 18:23:48

---------------
get amaroK plugin
n°955753
the real m​oins moins
Posté le 18-01-2005 à 18:29:13  profilanswer
 

c'est pas plus clair comme ça: ?

Citation :

public interface JobInterface2 <T> {
        public T doJob();
    }
 
    public class JobClass2 implements JobInterface2 {
        public Integer doJob() {
            return null;
        }
    }

n°955760
the real m​oins moins
Posté le 18-01-2005 à 18:37:41  profilanswer
 

(ce qui ressemble méchamment à ton code de départ, me demande si mon compilo affiche bien tous les warnings?)

n°955769
nraynaud
lol
Posté le 18-01-2005 à 18:49:32  profilanswer
 

il va falloir commencer à faire une faq java 5.0 parce qu'on a pas fini de se prendre des questions.
 
j'ai en tête pour l'instant :
  la question en MP de -- (il faudra travailler le code parce que c'est son code pro)
  les 2 questions de bobuse.

n°955771
Giz
Posté le 18-01-2005 à 18:53:58  profilanswer
 

nraynaud a écrit :

il va falloir commencer à faire une faq java 5.0 parce qu'on a pas fini de se prendre des questions.
 
j'ai en tête pour l'instant :
  la question en MP de -- (il faudra travailler le code parce que c'est son code pro)
  les 2 questions de bobuse.


 
c'est clair qu'avec toutes les nouveautés de tiger, y'a de quoi en faire un enorme tuto ! (pour l'instant je test les enumSet...c'est vachement puissant aussi :love:)

n°955773
bobuse
Posté le 18-01-2005 à 18:57:21  profilanswer
 

Giz a écrit :

(pour l'instant je test les enumSet...c'est vachement puissant aussi :love:)


 
c'est clur ! :)


---------------
get amaroK plugin
n°955774
bobuse
Posté le 18-01-2005 à 18:58:34  profilanswer
 

En fait, j'aimerai surtour savoir, si je suis obligé d'utiliser ma deuxième formulation.
Si je suis obligé, Ok j'accepte, mais c'est lourd comme syntaxe quand même [:ddr555]


---------------
get amaroK plugin
n°955775
nraynaud
lol
Posté le 18-01-2005 à 18:58:50  profilanswer
 

giz > y'a surtout de quoi se prendre la tête, erasures, covariance, inference, bornes etc. c'est pas des trucs que les gens normaux connaissent.

mood
Publicité
Posté le 18-01-2005 à 18:58:50  profilanswer
 

n°955776
the real m​oins moins
Posté le 18-01-2005 à 18:59:15  profilanswer
 

bobuse a écrit :

En fait, j'aimerai surtour savoir, si je suis obligé d'utiliser ma deuxième formulation.
Si je suis obligé, Ok j'accepte, mais c'est lourd comme syntaxe quand même [:ddr555]


 
euh, elle te plait pas la mienne? :heink:
 
 
edit: si y'a tjs des warnings, file moi les options que tu passes à javac, moi j'en ai pas :D


Message édité par the real moins moins le 18-01-2005 à 19:00:43
n°956049
nraynaud
lol
Posté le 19-01-2005 à 08:34:35  profilanswer
 

je viens de regarder la spec, j'ai pas d'explication claire.

n°956082
bobuse
Posté le 19-01-2005 à 09:17:21  profilanswer
 

the real moins moins a écrit :

euh, elle te plait pas la mienne? :heink:
 
 
edit: si y'a tjs des warnings, file moi les options que tu passes à javac, moi j'en ai pas :D


Ha pardon, j'avais pas vu la différence :D
 
Ben non, toujours le même warning !
 
Les options, ben tu sais ... j'ai pas trouvé comment les obtenir dans eclipse :D
Si quelqu'un sait ;)


---------------
get amaroK plugin
n°956087
chrisbk
-
Posté le 19-01-2005 à 09:21:19  profilanswer
 

Ca devient franchement abscond les messages d'erreurs [:boidleau]

n°956253
the real m​oins moins
Posté le 19-01-2005 à 12:03:20  profilanswer
 

bobuse a écrit :

Ha pardon, j'avais pas vu la différence :D
 
Ben non, toujours le même warning !
 
Les options, ben tu sais ... j'ai pas trouvé comment les obtenir dans eclipse :D
Si quelqu'un sait ;)


ha c'est eclipse qui te les sors? et tu t'y fies? [:mlc]

n°956267
Giz
Posté le 19-01-2005 à 12:14:50  profilanswer
 

the real moins moins a écrit :

ha c'est eclipse qui te les sors? et tu t'y fies? [:mlc]


 
+1 :o
 
Je n'ai pas de warning MOI !! ni souligné par l'editeur, ni a la compilation !
 
il est où le problème :??:
 
EDIT : j'utilise netBeans 4.0


Message édité par Giz le 19-01-2005 à 12:16:00
n°956270
Giz
Posté le 19-01-2005 à 12:19:31  profilanswer
 

nraynaud a écrit :

giz > y'a surtout de quoi se prendre la tête, erasures, covariance, inference, bornes etc. c'est pas des trucs que les gens normaux connaissent.


 
+1
 
Quand on lit les docs pour essaié de comprendre, c'est limite comprendre un langage de "chercheur". Je trouve leurs types generiques compliqués a manipuler et a apprendre pour un débutant.
Or jusqu'ici, Java se voulait d'être simple ! c'est dommage  :pfff:  
 
PS : erasures ca veut dire "signature de fonction vis a vis des types generiques" je crois et covariance c'est quoi :??:

n°956271
bobuse
Posté le 19-01-2005 à 12:19:50  profilanswer
 

the real moins moins a écrit :

ha c'est eclipse qui te les sors? et tu t'y fies? [:mlc]


Ben un peu.
Sauf quand je suis pas d'accord !
En l'occurence là, je comprends pas l'erreur, donc je suis pas d'accord, et donc je filtre les warnings de ce type pour plus les voir :D
 
Mais j'ai quand même un doute ...
Maintenant, si je suis vaiment sûr de moi, je vais carément désactiver ce genre de warning (il y a une option) et allez voir sur le bugzilla voir ce qu'ils en disent :)


---------------
get amaroK plugin
n°956274
the real m​oins moins
Posté le 19-01-2005 à 12:21:40  profilanswer
 

ouais mais bon, nous pondre un topic pour un bug d'eclipse, merde :o

n°956396
bobuse
Posté le 19-01-2005 à 14:30:54  profilanswer
 

Ben je le savais pas si c'était un bug [:ooooo]


---------------
get amaroK plugin

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  generics : unchecked conversion

 

Sujets relatifs
generics : besoin d'aspirine :D [Résolu][Fortran 95] Conversion de types numériques en chaine de caractères
Conversion tableau excel => page webConversion byte[4] en int
Conversion de typeconversion couleur
Conversion de chiffresConversion HTML en TXT
conversion de type en openCVconversion d'une chaine de caractère en un entier unique
Plus de sujets relatifs à : generics : unchecked conversion


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR