Hello,

Je suis en train de tester les annotations en JAVA, et selon un tutoriel sur un site que je ne siterai pas , il me semble que ce que je fais est correct!

J'ai une classe avec des annotations (Config01.java):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
public class Config01{
 
    @description(description="anyText")
    public boolean booleanP = false;
 
    public Boolean booleanS = false;
 
    public byte byteS = 0;
...
Mon annotation:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
package Configuration;
 
public @interface description {
    String description();
}
Et un prog de test:
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
 
...
import Configuration.description;
...
Config01 conf = new Config01();
 
Field[] g = conf.getClass().getDeclaredFields();
 
        for(int i=0;i<g.length;i++){
            try {
                description desc = g[i].getAnnotation(description.class);
                if(desc != null){
                    System.out.println("!! Annotation: "+desc.description());
                }
            } catch (IllegalArgumentException e) {
                e.printStackTrace();
            }
        }
...
Mais rien ne s'affiche...
Plus fort, si je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Object[] o = conf.getClass().getAnnotations();
        System.out.println("---:"+o.length);
Ca me met 0!

C'est quoi qui est faux?

P.S. l'annotation est dans le paquetage Configuration, pas le reste!?!

Merci, A+