Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème avec une exception

Gestion d'exception dans le cours écrit par Cyrille Herbi

Sujet résolu
    24 septembre 2016 à 1:12:13

    Bonsoir,

    Je souhaiterais savoir la solution pour un problème survenu quand j'étais entrain de suivre le cours "Apprenez à programmer en Java" sur openclassrooms, et plus précisément quand j'étais dans la partie des exceptions personnalisées.

    Au début j'ai écrit le code comme l'a mentionné l'auteur:

    public Ville(String pNom, int pNbre, String pPays) throws NombreHabitantException
    	  {
    		if (pNbre < 0)
    			throw new NombreHabitantException();
    		else {
    			System.out.println("Création d'une ville avec des paramètres !");
    			nomVille = pNom;
    			nomPays = pPays;
    			nbreHabitants = pNbre;
    			this.setCategorie();
    		}
    	  }


    mais eclipse m'a tout de suite mentionné une erreur au niveau de la méthode super() du constructeur de la classe Capitale:

    public Capitale(String nom, int nbre, String pays, String monument) {
    		super(nom, nbre, pays);
    		this.monument = monument;
    	}


    Le message d'erreur est le suivant:

    Unhandled exception type NombreHabitantException



    -
    Edité par smartghost 24 septembre 2016 à 1:32:58

    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      24 septembre 2016 à 5:34:42

      Salut,

      public Ville(String pNom, int pNbre, String pPays) throws NombreHabitantException
      {
          try
          {
              if (pNbre < 0)
                  throw new NombreHabitantException();
              else {
                  System.out.println("Création d'une ville avec des paramètres !");
                  nomVille = pNom;
                  nomPays = pPays;
                  nbreHabitants = pNbre;
                  this.setCategorie();
              }
          }catch(Exception e){e.printStackTrace();}
      }
      

      Tu ne devrais plus avoir de problème.

      • Partager sur Facebook
      • Partager sur Twitter
        24 septembre 2016 à 16:48:05

        super(nom, nbre, pays);
        est susceptible de lancer une NombreHabitantException qu'il faut soit capturer, soit laisser passer et dans ce cas tu dois déclarer que le constructeur Capitale(...) peut lancer ce type d'exception.
        • Partager sur Facebook
        • Partager sur Twitter
          24 septembre 2016 à 17:53:42

          Merci à vous tous,

          J'ai trouvé la solution, il faut ajouté "throws NombreHabitantException" au constructeur de la classe Capitale.

          • Partager sur Facebook
          • Partager sur Twitter

          Problème avec une exception

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown