[JAVA] Truc bizarre avec interface...

Poster un nouveau sujet   Répondre au sujet

Voir le sujet précédent Voir le sujet suivant Aller en bas

[JAVA] Truc bizarre avec interface...

Message par Herbiti le Dim 8 Juin - 22:38

Code:
import java.lang.reflect.Field;

interface A
{
    int a=0;
}

interface B extends A
{}

interface C extends A
{}

public class Main implements B, C
{
    public static void main(String[] args)
    {
        for (Field field : Main.class.getFields())
            System.out.println(field);
    }
}


Bonjour,

Ce code, trouvé sur internet, me pose problème...
Depuis quand les interfaces acceptent des attributs?
J'ai toujours appris qu'une interface n'avait que des méthodes... ou me trompe-je?
Et surtout, quand on implémente une interface, ce n'est pas implements qu'on utilise? et non extends comme dans l'exemple...

Bien à vous.

Herbiti
Herbiti

Herbiti

Messages : 237
Inscrit le : 22 Jan 2008
Age : 21
Prénom : Thibaut
Statut : Etudiant en 3I (2ème réussie mais avec des examens de passage)
Localisation : Zellik

Revenir en haut Aller en bas

Re: [JAVA] Truc bizarre avec interface...

Message par Anthoblack le Dim 8 Juin - 22:52

J'pensais comme toi... peut-être est-ce un autre type d'interface ?
Anthoblack

Anthoblack

Messages : 258
Inscrit le : 11 Mar 2008
Age : 20
Prénom : Anthony
Statut : étudiant
Localisation : Bruxelles

Revenir en haut Aller en bas

Re: [JAVA] Truc bizarre avec interface...

Message par nvs le Dim 8 Juin - 23:07

Herbiti a écrit:
Code:
import java.lang.reflect.Field;

interface A
{
    int a=0;
}

interface B extends A
{}

interface C extends A
{}

public class Main implements B, C
{
    public static void main(String[] args)
    {
        for (Field field : Main.class.getFields())
            System.out.println(field);
    }
}


Bonjour,

Ce code, trouvé sur internet, me pose problème...
Depuis quand les interfaces acceptent des attributs?
J'ai toujours appris qu'une interface n'avait que des méthodes... ou me trompe-je?
Et surtout, quand on implémente une interface, ce n'est pas implements qu'on utilise? et non extends comme dans l'exemple...

pour ce qui concerne la spécialisation d'interface à l'aide d'extends, ça me semble ok. par contre, pour le coup de l'attribut, je suis assez étonné. il me semblait me souvenir que seuls des attributs statiques et finaux (des constantes de classe donc) étaient possibles au sein d'une interface Suspect





nvs

Messages : 1659
Inscrit le : 25 Nov 2005
Age : 35
Prénom : Nicolas
Statut : prof
Localisation : bxl

Revenir en haut Aller en bas

Re: [JAVA] Truc bizarre avec interface...

Message par nvs le Dim 8 Juin - 23:15

ok. le problème de l'attribut d'interface non constant est résolu. en fait, leur nature static final est implicite. essaye d'ailleurs de modifier la valeur de l'attribut a dans le code que tu donnes : le compilateur hurle Very Happy

c'est ici que j'ai trouvé la réponse. dans les exemples que je connaissais, le static final apparaissait toujours explicitement...








nvs

Messages : 1659
Inscrit le : 25 Nov 2005
Age : 35
Prénom : Nicolas
Statut : prof
Localisation : bxl

Revenir en haut Aller en bas

Re: [JAVA] Truc bizarre avec interface...

Message par Herbiti le Lun 9 Juin - 11:55

Merci nvs pour vos réponses...

Je vois mieux!

Herbiti
Herbiti

Herbiti

Messages : 237
Inscrit le : 22 Jan 2008
Age : 21
Prénom : Thibaut
Statut : Etudiant en 3I (2ème réussie mais avec des examens de passage)
Localisation : Zellik

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


Poster un nouveau sujet   Répondre au sujet
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum