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 :

[Enum] Héritage entre enum


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut [Enum] Héritage entre enum
    Bonjour,

    J'utilise une énumération pour stocker un ensemble d'actions possibles.
    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
    26
    27
    28
     
    public enum MyActions {
      Load 	(KeyStroke.getKeyStroke(KeyEvent.VK_L,   
            InputEvent.CTRL_DOWN_MASK), 
    			KeyEvent.VK_L),
      Directory,
      About;
     
     
      private int mnemonic;
      private KeyStroke accelerator;
     
      private MyActions() {
    		this(null, KeyEvent.VK_UNDEFINED);
    	}
     
    	private MyActions(int mnemonic) {
    		this(null, mnemonic);
    	}
     
    	private MyActions(KeyStroke accelerator, int mnemonic) {
    		this.accelerator = accelerator;
    		this.mnemonic = mnemonic;
    	}
     
    get...
     
    }
    Mais j'aimerais pouvoir conserver cette 'structure' pour pouvoir la réutiliser dans d'autres développements sans avoir à retourne rvoir comment j'avait fais. L'idéal serait donc de pouvoir faire une base à cette énumération.
    UNe sorte d'objet parent ou, au pire, d'interface mais pour une enum je ne sais pas ce qui est possible.

    Avez-vous une idée ?

    Merci

    (Je suis en 1.6)

  2. #2
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Tu peux faire une interface définissant les méthodes que tu souhaites.
    C'est tout.

    Il n'y a pas d'héritage pour les enums (enfin si, mais interne à l'enum donc pas exploitable pour ton besoin).

  3. #3
    Invité
    Invité(e)
    Par défaut
    Heuu oui mais je peux pas faire public enum MyActions implements IFaceActions si ?

    De toutes façons une interface ne peux pas avoir de constructeur, je ne sais donc pas forcer l'utilisation des différentes constructeurs et je me retrouve avec un interface minable qui me permet juste de préciser qu'il faut pouvoir récupèrer le KeyStroke et le "Mnemonic" .. C'est décevant. EN plus n'import quelle classe peux réaliser cette interface.. l'idéla serais de la spécialiser pour les enums

  4. #4
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Citation Envoyé par Blaise1 Voir le message
    Heuu oui mais je peux pas faire public enum MyActions implements IFaceActions si ?
    Pourquoi pas ?
    Si je te dis que c'est possible tu pourrais au moins essayer...

    Citation Envoyé par Blaise1 Voir le message
    De toutes façons une interface ne peux pas avoir de constructeur, je ne sais donc pas forcer l'utilisation des différentes constructeurs et je me retrouve avec un interface minable qui me permet juste de préciser qu'il faut pouvoir récupèrer le KeyStroke et le "Mnemonic" .. C'est décevant. EN plus n'import quelle classe peux réaliser cette interface.. l'idéla serais de la spécialiser pour les enums
    C'est ta seule solution.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Citation Envoyé par natha Voir le message
    Si je te dis que c'est possible tu pourrais au moins essayer...
    Ben j'avais essayé mais sans IDE et avec des fautes donc ça marchait pas ...

    Mais, ça marche oui. Je suis déçu de ne pas avoir d'autres solutions que l'interface mais au moins j'ai déjà quelque chose.
    A première vue mon "framework" fonctionne toujours après avoir remplacé l'utilisation directe de mon enum par l'interface. Je verrais dans le futur.


    Merci

Discussions similaires

  1. Héritage de enum
    Par oliveettom dans le forum Général Java
    Réponses: 12
    Dernier message: 25/04/2013, 17h14
  2. Enum, Héritage, Concaténation, Masquage
    Par NoIdea dans le forum Débuter
    Réponses: 19
    Dernier message: 01/08/2010, 22h56
  3. Y a-t-il un rapport entre enum et Enumeration ?
    Par pilate dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 01/06/2009, 22h56
  4. Différence entre enum et enumerator
    Par johnnyjohnny dans le forum CORBA
    Réponses: 1
    Dernier message: 30/07/2008, 09h48
  5. Héritage entre Forms
    Par BarBal dans le forum Composants VCL
    Réponses: 7
    Dernier message: 29/08/2002, 17h44

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