Bonjour les amis,
J'ai une petite question de rien du tout.
Je suis débutant en java et j'essaye d'apprendre à programmer en java. Je suis au chapitre sur les généricités.
J'ai un code, il fonctionne bien mais j'arrête pas d'avoir des message de "warning" je sais pas pourquoi.
Voilà mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 public class Personne<T, S, I> { protected T nom; protected S prenom; protected I age; public Personne() { this.nom = null; this.prenom = null; this.age = null; } public Personne(T nom, S prenom, I age) { this.nom = nom; this.prenom = prenom; this.age = age; } // getter et setter public String jeSuis() { return "Bonjour je m'appel " + this.prenom + " et mon nom est " + this.nom + ". J'ai " + this.age + " ans."; } }et voici ma méthode main() :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 public class Famille<E, B, C> extends Personne<String, String, Integer> { private E frere; private B soeur; private C cousin; public Famille ( E frere, B soeur, C cousin, String nom, String prenom, int age ) { super( nom, prenom, age); this.frere = frere; this.soeur = soeur; this.cousin = cousin; } //getter et setter @Override public String jeSuis() { return super.jeSuis() + " Mon frere s'appel " + this.frere + ", ma soeur s'appel " + this.soeur + " et mon cousin s'appel " + this.cousin + "."; } }
Je met une photo pour que vous voyez les warning :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 ArrayList<Personne> a = new ArrayList<Personne>(); a.add(new Personne<>("Jean", "Bernard", 31)); a.add(new Personne<>("Albert", "Cavalier", 51)); a.add(new Personne<>("Canardo", "La Fouine", 70)); ArrayList<Famille> b = new ArrayList<Famille>(); b.add(new Famille<>("Marc", "Fabienne", "Maxus", "Justin", "Seriessou", 81)); afficher(a); afficher(b); } public static void afficher( ArrayList <? extends Personne> c) { for(Personne<String, String, Integer> d : c) { System.out.println(d.jeSuis()); } }
Je sais que je peux faire "@SuppressWarnings("rawtypes") " pour qu'il n'y ai plus de warning, mais j'aimerai régler le problème à la source.
Si vous pouvez m'aider, je vous serai reconnaissant
je tiens aussi à préciser que je suis vraiment débutant en Java :p
Merci d'avance
Partager