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

avec Java Discussion :

Exercice : rendre obligatoire, modifiable, et respecter une contrainte


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 70
    Par défaut Exercice : rendre obligatoire, modifiable, et respecter une contrainte
    Bonjour,

    J'ai quelques difficultés avec ces questions de cours:

    1/Que faut il mettre en place pour rendre le libellé obligatoire et modifiable?
    modifiable = setter
    obligatoire, je vois pas comment on fait
    2/ On ajoute une contrainte de longueur minimale de libellé (3 caractères )
    ou doit on prendre en compte cette contrainte ?
    Je suis pas sur, dans le constructeur et setter? et comment le coder ?

    Je vous remercie d'avance pour votre aide!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public class Composant{
        String libellé;
        Composant(String l){
            this.libellé=l;}
    }

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par bouritosse Voir le message
    1/Que faut il mettre en place pour rendre le libellé obligatoire et modifiable?
    modifiable = setter
    obligatoire, je vois pas comment on fait
    "obligatoire" signifie "à aucun moment il n'y a pas de libellé."

    Donc, après avoir mis un libellé c'est bon. Il n'y a plus rien à faire pour le rendre obligatoire.
    La question c'est avant avoir mis un libellé. Il ne faut pas que ce avant existe. Il faut que dès le début, le libellé soit donné.

    Tu es sûr que tu ne vois pas comment faire ça ?

    Citation Envoyé par bouritosse Voir le message
    2/ On ajoute une contrainte de longueur minimale de libellé (3 caractères )
    ou doit on prendre en compte cette contrainte ?
    Je suis pas sur, dans le constructeur et setter?
    Oui. À chaque fois qu'on fournit un libellé. Donc :
    - Dans le constructeur,
    - Dans le setteur,
    et dans ton cas, c'est tout.

    Citation Envoyé par bouritosse Voir le message
    et comment le coder ?
    À chaque fois qu'on fournit un libellé :
    - vérifier si le libellé respecte la contrainte
    -- si oui, continuer comme quand il n'y avait rien à vérifier
    -- si non, "faire une erreur."
    As-tu vu quelque part comment on "fait une erreur" en Java ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 70
    Par défaut
    Pour la première réponse, c'est ça alors ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    private String libellé="défaut";
    Deuxième partie
    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
    29
    30
    31
    32
    33
     
     
    public class Composant {
     
    	private String libellé="défaut";
     
     
    	public Composant(String libellé) throws TailleLibelleException{
    		if(libellé.length()>3){
    			this.libellé=libellé;
    		}
    		else{
    			throw new TailleLibelleException();
    		}
    	}
     
    	public String toString(){
    		return "composant "+libellé;
    	}
     
    	public String GetLibellé(){
    		return this.libellé;
    	}
    	public void SetLibellé(String libellé) throws TailleLibelleException{
    		if(libellé.length()>3){
    			this.libellé=libellé;
    		}
    		else{
    			throw new TailleLibelleException();
    		}
    	}
     
    }

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 70
    Par défaut
    Si ce que j'ai écris est bon, j'aurais une autre question,on me demande:

    111/Modifier la chaine retournée dans la classe Composant pour obtenir
    "composant anonyme" si le libellé est nul ( en une seule instruction )

    Avec plusieurs instruction j'aurais trouvé mais avec un ? je vois pas du tout ...

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par bouritosse Voir le message
    Pour la première réponse, c'est ça alors ?
    Ben non, il est obligatoire que celui qui crée un Composant lui fournisse un libellé.
    Là le libellé n'a pas été fourni, c'est toujours le même, ça ne sert à rien.

    Citation Envoyé par bouritosse Voir le message
    Deuxième partie
    C'est l'idée.
    Mais :
    - On te demande une taille minimale, pas maximale.
    - tant qu'à faire, ce serait bien de mettre ce traitement dans une seule méthode, que tu appelles quand tu en as besoin.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 70
    Par défaut
    J'ai un peu de mal à comprendre ce qu'il faut faire pour la première
    question alors..

  7. #7
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Dans ce cas peux-tu me parler un peu du constructeur. Ce qu'il fait, comment il fonctionne. Est-ce qu'il a un paramètre et pourquoi...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Rendre obligatoire la saisie d'une cellule avant autre saisie
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/07/2009, 14h09
  2. Réponses: 3
    Dernier message: 13/11/2008, 13h36
  3. Modifier une colonne qui possède une contrainte DEFAUT
    Par David.V dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 23/01/2007, 11h35
  4. Modifier une contrainte sur une table InnoDb
    Par DomZZZ dans le forum Outils
    Réponses: 1
    Dernier message: 13/03/2006, 14h40
  5. [sql] comment modifier une contrainte
    Par imedg dans le forum Oracle
    Réponses: 5
    Dernier message: 11/03/2006, 06h54

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