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 :

Return et avertissement de l'IDE


Sujet :

avec Java

  1. #1
    Membre confirmé
    Homme Profil pro
    Hobby
    Inscrit en
    Août 2002
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Hobby

    Informations forums :
    Inscription : Août 2002
    Messages : 128
    Par défaut Return et avertissement de l'IDE
    L'IDE (NetBeans 8.2 en l'occurence) se plaint avec missing return statement alors qu'il existe bien dans le code (simplifié ici) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public static ArrayList<xxx> deserialize(String fileName) {
      //...
     
      try (www){
         //...
         return inputDataList;
      } 
     
      catch (IOException | ClassNotFoundException e1) {
         // ...
      }
    }
    Pourquoi l'IDE ne prend en compte le return dans le try ?
    Que faut-il écrire pour supprimer cet avertissement ?
    (L'IDE propose "return null;" avant l'accolade fermante de la méthode, mais je n'ai pas besoin de cette ligne...)

    Merci pour vos conseils.

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Salut,

    Une méthode qui a un type de retour est censée toujours retourner une valeur, dans tous les cas. Ce n'est pas que l'IDE ne tient pas compte du return dans le bloc try, c'est qu'il n'est pas suffisant : en effet, en cas d'exception attrapée par ton bloc catch, il n'y a pas de return, or il faut aussi retourner une valeur dans ce cas.

    Soit,

    1. tu repousses le traitement de l'exception à une méthode appelante, et tu fais un throws au lieu du catch (ou tu wrappes l'exception dans une RuntimeException )
    2. soit tu retournes une valeur qui pourra être interprétée par le code appelant comme un echec de ta méthode, comme null comme te le propose l'IDE, ou une liste vide ou une liste remplie avec des éléments par défaut, comme ça t'arrange dans ton programme.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  3. #3
    Membre confirmé
    Homme Profil pro
    Hobby
    Inscrit en
    Août 2002
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Hobby

    Informations forums :
    Inscription : Août 2002
    Messages : 128
    Par défaut
    @joel.drigo
    Merci pour cette réponse.

    Je vais opter pour le null dans un premier temps et regarderai la liste remplie avec des éléments par défaut (déjà créée) dès cette partie du programme finalisée.

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

Discussions similaires

  1. [Kylix] Message d'avertissement GPL Kylix OE
    Par fred78 dans le forum EDI
    Réponses: 5
    Dernier message: 30/11/2002, 13h12

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