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 :

Problème gestion objets et interfaces


Sujet :

avec Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2013
    Messages : 7
    Points : 8
    Points
    8
    Par défaut Problème gestion objets et interfaces
    Bonjour a tous!

    Je me retrouve en ce moment a devoir programmer une classe public Matrice qui implemente IMatrice. Ce programme sert a la gestion de matrice. Dans ma classe Matrice je dois programmer la somme de d'une matrice avec une autre (IMatrice autreMatrice). Voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    public IMatrice somme (IMatrice autreMatrice) {
           double resultat=0;
            Matrice resultatMatrice = new Matrice(autreMatrice.getNumColonnes(),autreMatrice.getNumLignes(),0 );
     
     
            for (int i = 0; i < (autreMatrice.getNumColonnes() * autreMatrice.getNumLignes()); i++) {
     
                resultat = elements.get(i) + autreMatrice.elements.get(i);
                resultatMatrice.elements.add(i, resultat);
           }
            return resultatMatrice ;
        }
    Dans ma classe j'ai trois variables d'instances :
    int numColonnes;
    int numLignes;
    ArrayList<Double> elements = new ArrayList<Double>();

    Mon problème c'est que la ligne qui contient : autreMatrice.elements.get(i) ne compile pas. L'IDE me dit que c'est parce que c'est un type IMatrice... J'avoue que je ne comprend pas vraiment...

    Merci d'avance pour l'aide

    Cordialement

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    une interface n'a que des méthodes. Donc dans ton code tu as plusieurs choses:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Matrice resultatMatrice
    Ca, c'est un objet de type Matrice, donc tu as accès à ses méthodes, et ses champs public. De plus, comme tu es dans le code de "Matrice", tu as aussi accès aux champs privés et protégés de resultatMatrice.

    , il est de type Matrice, donc même chose que pour resultatMatrice, tu as accès à tout.


    il est de type IMatrice, ça peut être une instance de Matrice, mais ça peut aussi être une instance de MatriceVirtuelle, MatriceCompressee, MatriceIdentitaire, etc.... Bref, seul l'interface IMatrice est garantie.

    Donc tu n'a accès qu'aux méthodes de IMatrice. Je suppose que cette interface a une méthode "getElement(x,y)", c'est cette méthode que tu dois utiliser.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2013
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Salut!

    Du coup ce que tu es en train de me dire cest que les variables d'instances de autreMatrice ne sont pas accessible seulement ses methodes?

    Cordialement

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Ce que je dit c'est que tu ne peux même pas savoir si il y a des variables d'instance ni ce qu'elles sont, c'est le principe d'une interface, un contrat, mais tu ignore comment il est remplis.

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

Discussions similaires

  1. [Virtual Pascal] [Win32] Objets COM - Interface IShellLink
    Par Alcatîz dans le forum Autres IDE
    Réponses: 5
    Dernier message: 27/10/2005, 21h19
  2. Problème avec objet fermé
    Par Mvu dans le forum ASP
    Réponses: 4
    Dernier message: 22/09/2005, 10h30
  3. Réponses: 13
    Dernier message: 01/09/2005, 15h09
  4. Problème programmation objet
    Par Contrec dans le forum MFC
    Réponses: 54
    Dernier message: 30/03/2005, 11h30
  5. Problème d'objet attendu
    Par odelayen dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 22/02/2005, 10h27

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