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

Java Discussion :

Problème implémentation de mon interface


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Par défaut Problème implémentation de mon interface
    Bonjour à tous,

    J'ai une interface qui est comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public interface ToolInfos {
     
    	public String getToolName();
    	public String getToolVersion();
    	public List<String> getInputFiles();
    	public String getOutputFile() throws PayloadRootPathNotInitializedException;
     
    }

    Et ensuite une classe qui implémente cette interface comme ceci :



    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    public class MaClasse implements ToolInfos{
     
        protected static IhmMaClasse _ihmMaClasse;
     
        public static void main(String[] args){
     
            _ihmMaClasse = new IhmMaClasse();
            _ihmMaClasse.setVisible(true);
     
        }
     
        public static void Prog(IhmMaClasse _ihmMaClasse){
     
            ListeConf.EcrireTxt(_ihmMaClasse.getFichier(), fichier, tt, om); 
            MaClasse iTool = new MaClasse();
            Header iHeader = new Header(iTool);
     
     
        @Override
        public String getToolName() {
    		return("Fichier");
    	}
     
        @Override
        public String getToolVersion() {
    		return ("V1.1");
    	}
     
        @Override
        public List<String> getInputFiles() {
    		ArrayList<String> iInputFiles = new ArrayList<String>();
    	        iInputFiles.add(_ihmMaClasse.getDescXXX());
    		iInputFiles.add(_ihmMaClasse.getDescYYY());
    		iInputFiles.add(_ihmMaClasse.getDescFFF());
    		return iInputFiles;
    	}
     
        @Override
        public String getOutputFile() throws PayloadRootPathNotInitializedException {
    		String iOutputFile = _ihmMaClasse.getFichier();
    		return iOutputFile;
    	}
     
    }
    Enfin voici ma classe Header :

    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
    public class Header {
     
    	protected String mSoftwareName; 
    	protected String mSoftwareVersion; 
    	protected List<String> mInputFiles; 
    	protected String mOutputFile; //Le fichier généré (de sortie)
     
    	public Header(ToolInfos aToolInfos) throws PayloadRootPathNotInitializedException{
     
    		mOutputFile = aToolInfos.getOutputFile();
    		mSoftwareName = aToolInfos.getToolName();
    		mSoftwareVersion = aToolInfos.getToolVersion();
    		mInputFiles = aToolInfos.getInputFiles();
     
            }
     
    }
    Mon problème c'est que au moment où je fais Header iHeader = new Header(iTool); dans MaClasse j'ai une exception de pointeur null à ce moment là String String iOutputFile = _ihmMaClasse.getFichier(); Enfait c'est comme si _ihmMaClasse n'était pas initialisé alors qu'il l'est dans le main de MaClasse. Je ne comprend pas trop où est le problème. N'hésitez pas à me poser des questions si vous ne comprenez pas trop mon code ou bien mon problème.

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2010
    Messages : 394
    Par défaut
    Bonjour,

    C'est quoi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     _ihmMaClasse = new IhmMaClasse();
    ?

    Parce que j'ai l'impression qu'il manque des bouts dans le code que tu as posté.

    Mako.

  3. #3
    Membre Expert
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Par défaut
    Dans ton code, on ne voit pas ou tu initialises _ihmNumConf.
    Tu peux poster ce code ?

    Pour le cas ou, je rappelle qu'en Java, une variable de classe non initialisée est initialisée automatiquement à null. Ca ne crées pas une instance par défaut. Et dans ton code, je me serais plutot attendu à voir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    protected static IhmNumConf _ihmNumConf = new IhmNumConf();

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Par défaut
    Oups pardon erreur de frappe...

    C'est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    protected static IhmMaClasse _ihmMaClasse
    Mako je n'ai en effet pas posté tout mon code car il y en a trop.
    IhmMaClasse() étant le constructeur d'une classe. C'est là en fait où est initialisé IhmMaClasse

    merci de votre aide

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2010
    Messages : 394
    Par défaut
    J'ai peut-être des problèmes de vision, mais tu dis que ton erreur vient de cette ligne String iOutputFile = _ihmNumConf.getXmlListeConfText();, mais elle est où cette ligne ?

    Mako.

    Edit : Ce serait bien si tu pouvais corriger les erreurs dans le code du premier message, parce que sinon, c'est vraiment pas évident de suivre...

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Par défaut
    Arf m**** encore une erreur de copier coller.

    Il s'agit de la ligne String iOutputFile = _ihmMaClasse.getFichier();
    présent dans getOutputFile() dans MaClasse.

    Je corrige les erreurs. Merci de ta patience

  7. #7
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Par défaut
    Tu lances bien l'application via MaClasse? (autrement dit: est-ce bien le main par lequel ton appli est lancée?)

    Comme _ihmMaClasse est une variable static, si a un endroit tu la met a null tu auras le problème mentionné. Est-ce le cas?

Discussions similaires

  1. Problème Automate dans mon interface
    Par taitai83 dans le forum Général Java
    Réponses: 0
    Dernier message: 15/10/2009, 09h53
  2. [C# 3.0] Problème implémention explicite d'interfaces
    Par LE NEINDRE dans le forum Windows Forms
    Réponses: 1
    Dernier message: 28/10/2008, 13h44
  3. [MySQL] problème dans mon interface admin
    Par ni.co dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 22/05/2008, 11h41
  4. énorme problème avec mon interface MFC
    Par cenedra dans le forum MFC
    Réponses: 23
    Dernier message: 17/07/2006, 09h36
  5. énorme problème avec mon interface MFC
    Par cenedra dans le forum C++
    Réponses: 2
    Dernier message: 12/07/2006, 09h54

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