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 :

Problème pour faire fonctionner un try/catch avec entrée clavier


Sujet :

Langage Java

  1. #1
    Candidat au Club
    Inscrit en
    Mai 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Problème pour faire fonctionner un try/catch avec entrée clavier
    Bonjour tout le monde,

    Décidémment j'ai un petit problème, je n'arrive pas à capturer une exception pourtant toute simple.
    Soit une classe abonné. Un abonné a un prénom et un nom : Abonne(prénom,nom)
    Je veux que le programme me retourne une exception lorsque j'ajoute un abonné avec le prénom "toto".

    Lorsque je tape ceci tout se passe bien , l'exception est capturée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Abonne b = new Abonne( "toto", "tata" );
    Par contre dès que je demande à l'utilisateur de rentrer le nom "toto", alors rien ne va plus et l'abonné est accepté avec son nom "toto", l'exception n'existe pas !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Abonne b; 
    Scanner sc = new Scanner( System.in );
    String b = sc.next();
    try
    {
      b = new Abonne( b, "lolo" );
    }
    catch( NomAbonneException e )
    {
      e.printStackTrace();
    }
    Désolé si c'est une erreur de débutant.
    Merci d'avance.

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 380
    Points : 480
    Points
    480
    Par défaut
    Bonjour,

    Normalement cela devrait fonctionner le principe du code est correct.
    Par contre, tu utilises 2 variables nommées 'b', donc le code en l'état ne doit pas compiler. Il faut au minimum renommer une des deux variables.

    a+

  3. #3
    Candidat au Club
    Inscrit en
    Mai 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Autant pour moi, j'utilise bien deux variables différentes dans le code, mais ça ne fonctionne pas.

  4. #4
    Membre expérimenté
    Avatar de Patriarch24
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    1 047
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2003
    Messages : 1 047
    Points : 1 640
    Points
    1 640
    Par défaut
    On peut voir le code de la classe Abonne ?
    En premier lieu, utilisez un moteur de recherche.
    En second lieu, postez sur le forum adéquat !

  5. #5
    Candidat au Club
    Inscrit en
    Mai 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Euu, il est un peu long, c'est tout un tas de méthodes élémentaires et inintéressantes, mais voici les attributs et le constructeur :

    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
    public class Abonne   {
     
    	private String nom;
    	private String prénom;
    	private String dateDeNaissance;
    	private int numAbonne;
    	private static int numberCreated = 0;
    	private static int nombreEmprunts=0;
     
     
     
    	public Abonne (String prénom,String nom) throws NomInvalideException {
     
    		if (prénom=="toto") throw new NomInvalideException();
     
    		this.nom = nom;
    		this.prénom = prénom;
    		this.numAbonne = ++numberCreated;
     
    	}
    .
    .
    .
    }
    J'ai une classe NomInvalideException qui m'affiche juste un petit message d'erreur quand l'excetion est capturée.
    Merci

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 110
    Points
    110
    Par défaut
    Salut !

    prénom=="toto" c'est pas bon ça !

    utilise plutôt prenom.equals("toto") !

    à+

  7. #7
    Candidat au Club
    Inscrit en
    Mai 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par legentil Voir le message
    Salut !

    prénom=="toto" c'est pas bon ça !

    utilise plutôt prenom.equals("toto") !

    à+
    Merci beaucoup.
    C'est bien mieux comme ça .

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

Discussions similaires

  1. Problème pour faire fonctionner Ruby
    Par JodMTL dans le forum Ruby
    Réponses: 8
    Dernier message: 16/01/2015, 09h17
  2. Problème pour faire fonctionner un EJB3
    Par Payton3IL dans le forum Java EE
    Réponses: 0
    Dernier message: 16/02/2012, 19h30
  3. Réponses: 2
    Dernier message: 24/01/2012, 11h25
  4. Réponses: 3
    Dernier message: 21/11/2011, 10h54
  5. Problème pour faire fonctionner OpenVpn.
    Par pcsystemd dans le forum Administration système
    Réponses: 1
    Dernier message: 29/08/2007, 00h27

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