IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Méthodes abstraites et statiques


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 68
    Par défaut Méthodes abstraites et statiques
    Bonjour,
    Je me suis perdues dans la définition des méthodes abstraites et statiques... Mon problème est le suivant:
    J'ai défini une classe abstraite regroupant des méthodes abstraites qui sont censées être utilisées dans toutes mes classes filles.
    Parmi ces méthodes abstraites, je souhaite que certaines soient statiques pour chaque classe fille.

    Je pensais faire ca:
    public abstract class ObjetBase{

    public abstract static String[] getNomsDesAttributs();

    }

    public class Temoin extends ObjetBase {

    public static String[] getNomsDesAttributs(){
    return tab_noms_attributs;
    }
    }

    mais ca marche pas. Apparrement je ne peux pas mettre abstract et static en meme temps...
    comment faire?

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par Asnidren
    Apparrement je ne peux pas mettre abstract et static en meme temps...
    C'est normal : une méthode static est totalement indépendante des instances de la classe : tout héritage n'a donc aucun sens...

    Pourquoi ces méthodes abtraites devraient-elles être static ? Que veux-tu faire exactement ?

    a++

    [edit]

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 68
    Par défaut
    parce que si j'enleve le static de la classe abstraite, ca me fait cette erreur:

    Error(133,28): static method getNomsDesAttributs() in class Pack_Base.Temoin cannot override method getNomsDesAttributs() in class Pack_Base.ObjetBase

    enfin ptet que l'erreur n'a rien a voir, je sais pas...

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Asnidren
    parce que si j'enleve le static de la classe abstraite, ca me fait cette erreur:

    Error(133,28): static method getNomsDesAttributs() in class Pack_Base.Temoin cannot override method getNomsDesAttributs() in class Pack_Base.ObjetBase
    D'après le message d'erreur la méthode est déclaré static : Or tu ne peut pas avoir d'héritage avec les méthodes static...

    a++

  5. #5
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 68
    Par défaut
    erf ok. comment je fais alors? je voudrais pouvoir appeler la methode (static) indépendament de la nature de la classe fille... c'est pas possible?

  6. #6
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Asnidren
    erf ok. comment je fais alors? je voudrais pouvoir appeler la methode (static) indépendament de la nature de la classe fille... c'est pas possible?
    Ben les méthodes static sont indépendante justement !!!

    Explique exactement ce que tu veux faire et non pas comment tu voudrais le faire...

    a++

Discussions similaires

  1. héritage et méthode abstraite
    Par troussepoil dans le forum C++
    Réponses: 13
    Dernier message: 30/03/2007, 09h51
  2. [SAX] Erreur méthode abstraite
    Par kij dans le forum Format d'échange (XML, JSON...)
    Réponses: 5
    Dernier message: 13/12/2006, 11h55
  3. Réponses: 14
    Dernier message: 17/11/2006, 19h17
  4. Question sur les méthodes abstraites
    Par nmathon dans le forum Delphi
    Réponses: 3
    Dernier message: 15/06/2006, 20h30
  5. Les méthodes abstraites et les interfaces
    Par ETI-trian dans le forum Langage
    Réponses: 3
    Dernier message: 17/01/2006, 12h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo