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 :

attribut de type enum


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 247
    Par défaut attribut de type enum
    bonjour tout novice en java je dois declarer un attribut de classe qui s'appelle publicVise et qui est en fait de type énuméré.
    je déclare tous mes attributs en private.
    les valeurs du type énuméré sont enfant, ado adulte.
    J'ai fait la declaration suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private enum publicVise {enfant, ado, adulte;}
    mais ça n'a pas l'air de marcher
    quelqu'un peut il m'aider ?
    merci

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 247
    Par défaut
    je tiens à préciser que j'ai regardé les FAQ sur les types énumérés mais ce n'est pas clair pour moi

  3. #3
    Membre Expert

    Homme Profil pro
    SDE
    Inscrit en
    Août 2007
    Messages
    2 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : Août 2007
    Messages : 2 013
    Par défaut
    Bonjour,

    Premièrement les enum sont en fait des constantes, nous adopterons donc les même conventions de nommage.

    Déclaraltion de TypePublic.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public enum TypePublic {
        ENFANT,
        ADOLESCENT,
        ADULTE;
    }
    Declaration de MyApp.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public class MyAdd {
        public static void main(String[] args) {
            TypePublic PublicVise = TypePublic.ADOLESCENT;
        }
    }

  4. #4
    Membre expérimenté Avatar de erictoguem
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 150
    Par défaut
    Si ton énumération publicViseest hors de la définition de toute classe, alors on ne peut lui appliquer un modificateur private. Voilà pourquoi celà ne marchait pas!
    Mais tu peux lui appliquer le modificateur d'accès de ton choix si ton enum publicViseest interne à une classe.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 247
    Par défaut
    je ne comprends pas ce que tu veux dire par "interne à une classe". C'est un attribut de classe.
    De plus lorsqaue je crée les constructeurs, cet attribut pose problème, Eclipse me le souligne en rouge.
    Merci pour votre aide.

  6. #6
    Membre expérimenté Avatar de erictoguem
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 150
    Par défaut
    exemple de definition comme interne à une classe C :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    class C{
      private enum publicVise {
        enfant, ado, adulte;
      }
      ... 
    }
    Cette définition est correcte, car comme interne à une classe, on peut lui appliquer tout modificateur d'accès.

    définition externe à toute classe;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    package monpakage;
    private enum publicVise {enfant, ado, adulte;}
    class C{
      ...
    }
    cette définition est incorrecte car on ne peut lui appliqué que le modificateur public ou pas de modificateur d'accès.

Discussions similaires

  1. Attribut de type enum dans un objet persistant
    Par herve91 dans le forum JPA
    Réponses: 2
    Dernier message: 16/08/2008, 21h02
  2. type enum
    Par donny dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 17/05/2005, 14h05
  3. 1 champ de type enum à 3 valeurs ou 2 champs booléens ?
    Par El Saigneur dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 22/01/2005, 08h53
  4. [VB.NET] Variable de type enum avec du string
    Par Mouse dans le forum Windows Forms
    Réponses: 4
    Dernier message: 13/01/2005, 18h22
  5. [MySQL] Valeur par défaut d'un type ENUM
    Par aliasjcdenton dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 31/10/2004, 20h44

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