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 :

Ajouter une interface dans une classe


Sujet :

Langage Java

  1. #1
    Battosaiii
    Invité(e)
    Par défaut Ajouter une interface dans une classe
    Salut !

    Lorsque je compile mon fichier il me repond cela pour chaque classe de
    l'interface ! Dois je recopier toutes les methodes de l'interfaces dans ma nouvelle classe ?
    Je pensais qu'on pouvait les utiliser directement sans les appeller dans la classe.


    .\Wsdl4j.java:10: wsdlgen.Wsdl4j is not abstract and does not override abstract
    method setFactoryImplName(java.lang.String) in javax.wsdl.xml.WSDLReader
    public class Wsdl4j extends ScriptableObject implements WSDLReader{
    ^
    1 error
    Le code est celui ci :

    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
     
    package wsdlgen;
     
    import java.io.*;
    import java.util.Vector;
    import org.mozilla.javascript.*;
     
    import com.ibm.wsdl.*;
    import javax.wsdl.xml.*;
     
    public class Wsdl4j extends ScriptableObject implements WSDLReader{
     
        /**
         * The zero-parameter constructor.
         */
        public Wsdl4j() {
        }

  2. #2
    Membre régulier
    Homme Profil pro
    Architecte technique
    Inscrit en
    Mars 2006
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2006
    Messages : 58
    Points : 73
    Points
    73
    Par défaut
    Une interface possède des déclarations de fonctions. Ces fonctions n'ont pas de corps. Il est donc normal de les redéfinir dans la classe qui implémente cette interface.

  3. #3
    Membre habitué Avatar de BlackWood
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 167
    Points : 169
    Points
    169
    Par défaut
    Pour compléter la réponse de wizaord

    Si tu souhaites utiliser l'interface sans redéfinir toutes les méthodes, tu peux créer une classe abstraite implémentant cette interface :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    abstract class AbstractWsdl4j extends ScriptableObject implements WSDLReader {
    // Implémentation de toutes les méthodes de WSDLReader
    }
    Tu peux ainsi définir des implémentations par défaut ou les laisser à vide.
    Ensuite, il ne te reste plus qu'à créer ta classe Wsdl4j :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    public class Wsdl4j extends AbstractWsdl4j {}
    En redéfinissant uniquement les méthodes souhaitées...

    edit : attention aux fotes...

Discussions similaires

  1. Colorer une ligne dans une image d'une interface
    Par yasmine2013 dans le forum Interfaces Graphiques
    Réponses: 0
    Dernier message: 27/05/2012, 22h32
  2. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  3. portée d'une variable dans une fonction dans une méthode
    Par laurentg2003 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2009, 19h05
  4. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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