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 :

throws Exception et passage d'arguments


Sujet :

avec Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Par défaut throws Exception et passage d'arguments
    Bonjour,
    avant je faisais du c
    je fais un petit programme en java depuis quelques jours.

    mon programme utilise une interface graphique donc j'ai écrit mon code a exécuté apres cette instruction la:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public void actionPerformed (ActionEvent ev) {
     
    //script de la socket
    }

    je dois obligatoirement utiliser throws Exception pour la socket.
    j'ai essayé de mettre throws Exception apres
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public void actionPerformed (ActionEvent ev) throws Exception {
    mais ca marche pas.
    j'aurais aimé utiliser throws Exception ici comme ca mon programme reste tres linéaire. penser vous que actionPerformed et throws Exception soit compatible?

    comme ca ne marchait pas j'ai décidé de faire une fonction qui exécute le code de la socket
    j'ai fait ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public void socket () throws Exception
      {
    a++;  //imaginons que le script ce soit ca
    }
    comment je fais pour envoyer des arguments dans ma fonction socket?
    comment fait on l'appel à la fonction en lui envoyant a?
    cette instruction "public void socket () throws Exception" est elle correcte?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Par défaut fonction, appel de fonction et parametres
    j'ai simplifié au maximum mon code.
    supposons que pour socket() on est obligatoirement besoin de throws Exception.

    que faut il faire pour que ce code marche (au niveau de la fonction, appel de fonction et parametres)???


    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
    class Fen2Boutons extends JFrame implements ActionListener
    {
       String a = a_graphique.getText() ; 
       b= Integer.parseInt(a);
    
       public void actionPerformed (ActionEvent ev) 
        {
        socket();}
         }
    
    
        public void socket () throws Exception
        {
        System.out.println ("num:"+b);
         }
    }
    
    public class test
    { public static void main (String args[]) 
      { Fen2Boutons fen = new Fen2Boutons() ;
       }
    }

  3. #3
    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
    Pour les paramètres il n'y a pas de magie : il faut te débrouiller pour que les infos dont tu as besoin soient accessibles dans le contexte de ta classe Fen2Boutons.

    Pour l'exception, faire un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public void actionPerformed (ActionEvent ev)  {
      try {
        socket();
      } catch(Exception e) {
        faireQuelqueChoseQuiIndiqueALutilisateurQueQuelqueChoseSEstMalPasse(e);
        // Par exemple une pop-up d'erreur.
      }
    }
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Je n'ai pas vraiment compris quel est ton problème. As-tu vraiment compris le mécanisme des exceptions ?

    Si tu rajoutes throws Exception à la fin d'une méthode, tu t'engages à ce que le corps de ladite méthode contienne un lancement d'un objet de type Exception (ou de ses sous-types). Sinon ça ne peut pas compiler.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Par défaut
    merci pour vos réponse
    est il possible d'ouvrir une socket dans utliser d'exception?

    je suis sur que mon programme marche vu qu'il fait ce que je veux, donc ca me sert a rien les exceptions.
    si ya moyen de s'en débarasser je veux bien.

    le probleme viens du fait que si je suis obligé de rajouter des exceptions je dois creer une nouvelle "fonction"
    car si je mets throws Exception apres actionPerformed (ActionEvent ev) ca ne fonctionne pas.

    donc je fais ma nouvelle fonction je rajoute throws Exception et peut etre que ca peut fonctionner

    apres il restera que le probleme du passage des parametres.





    le probleme de
    try {
    socket();
    } catch(Exception e) {

    c'est que je tombe toujours dans exception surement qu'il y a truc qui fonctionne pas mais comme ca fonctionne ca me dérange pas.
    donc je peux pas utiliser try

  6. #6
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Je ne comprend rien. Fais un effort dans l'explication de ton problème stp.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Par défaut
    il y a quelques jour j'ai creer un script java sans interface graphique qui utilise une socket.

    je l'ai testé et le prgramme fontionne.
    ce programme je l'ai copier des exemple oracle et il utilise les exceptions


    apres j'ai creer une interface graphique dans un autre fichier java.
    dans le programme il y a juste l'interface graphique et un petit test qui vérifie qu'il récuper l'élément d'une boite texte.

    maintenant je voudrais regrouper les 2:
    interface graphique + programme socket

    Probleme:
    dans le fichier de l'interface graphique
    il a deja ce truc la:
    public void actionPerformed (ActionEvent ev) {
    j'ai écrit mon test d'affichage apres.
    donc je pensai metre mon script de la socket apres.

    j'ai tester ca mais javac répond erreur pas d'exception.

    j'ai regarder dans le fichier ou le script socket fonctionnait et j'ai vu ca:
    public static void main(String[] args) throws Exception {
    donc je me suis dis il maque throws Exception

    donc dans le fichier d'interface graphique ou j'ai déja insérer le code de la socket j'ai modifié:
    public void actionPerformed (ActionEvent ev) {
    par
    public void actionPerformed (ActionEvent ev) throws Exception {

    mais ca ne marche toujours pas
    donc j'ai rajouter

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Par défaut
    je regarde le principe des packages,
    c'est peut etre ca qu'il me faut
    l'interface graphique appele directement le fichier socket.class
    je continue a me renseigner sur les packages.

  9. #9
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Non, ce n'est pas une histoire de paquetage. D'après ce que j'arrive à comprendre, thelvin t'a déjà donné la réponse plus haut.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  10. #10
    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 zoé78 Voir le message
    est il possible d'ouvrir une socket dans utliser d'exception?
    Quand on fait quelque chose, une erreur peut survenir. La seule manière de ne pas avoir d'erreur, c'est de ne rien faire.
    Ouvrir une socket ce n'est pas rien faire, donc non.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Par défaut
    je n'ai pas avancé et je comprend pas beaucoup plus.
    en tout cas merci pour vos réponses.

    Dans mon cas ou j'ai deux scripts a réunir (interface graphique + socket)
    si je prend pour base l'interface graphique qui est composé comme ca:

    graph.java
    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
    class Fen2Boutons extends JFrame implements ActionListener
    {
       public Fen2Boutons ()
      {  
       }
       public void actionPerformed (ActionEvent ev) 
      {
          if (ev.getSource() == recevoir)
      {
       soket();
       }
    }
    
    public class graph
    { public static void main (String args[]) 
      { Fen2Boutons fen = new Fen2Boutons() ;
        fen.setVisible(true) ;
      }
    }

    la socket comme ca:
    socket.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public class socket {
       public static void main(String[] args) throws Exception {
       System.out.println("test"); 
       }
    }
    que me conseillez vous pour appeler socket (pour qu'il affiche test par exemple) à partir de graph? insérer public class socket dans graph ou faire un package?

    dans le premier cas j'ai eu une erreur qui me disait que je pouvait pas mettre throws Exception donc avec la premiere je bloque

  12. #12
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public void actionPerformed (ActionEvent ev)  {
      try {
        socket();
      } catch(Exception e) {
        faireQuelqueChoseQuiIndiqueALutilisateurQueQuelqueChoseSEstMalPasse(e);
        // Par exemple une pop-up d'erreur.
      }
    }
    Bis repetita
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  13. #13
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Déjà socket on sait pas ce que c'est. Ton code suggère que c'est une méthode, définie on-ne-sait-où. Et puis tout d'un coup socket devient une classe (socket.java). Bref, tu mélanges tout je crois et il est grand temps d'aller faire un tour dans les cours Java : http://java.developpez.com/cours/
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

Discussions similaires

  1. Exception générée par le passage d'arguments
    Par soumti84 dans le forum Général Java
    Réponses: 11
    Dernier message: 31/03/2009, 22h33
  2. [JAVASCRIPT] passage d'argument à une fonction
    Par LE NEINDRE dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 03/06/2005, 18h17
  3. [TASM] Passage d'argument à une macro
    Par sorry60 dans le forum Assembleur
    Réponses: 13
    Dernier message: 23/04/2005, 18h22
  4. [web] passage d'arguments à un CGI
    Par ma2th dans le forum Web
    Réponses: 4
    Dernier message: 20/08/2004, 12h18
  5. passage d'argument à la procédure main ()
    Par Zazeglu dans le forum C
    Réponses: 5
    Dernier message: 01/09/2003, 19h59

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