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 :

Classe comme attribut d'une classe parente


Sujet :

avec Java

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 77
    Par défaut Classe comme attribut d'une classe parente
    Salut a tous,

    je pense pas que le titre soit super clair donc je vais expliquer un peu mon "probleme".
    En fait c'est plutot une question (surement bête) que je me pose :
    je suis en train de creer un petit logiciel de dessin et j'ai une classe abstract Figure ainsi qu'une classe Point qui hérite de Figure.

    Dans ma classe Figure j'ai deux champs entiers x et y, et je me demandais si c'était pas mieux de mettre un objet Point comme attribut plutot ces deux entiers. Je me pose cette question car vu que Point hérite de Figure je trouvais bizarre de mettre un objet Point en tant qu attribut de Figure.. et donc j'ai un peu l'impression que cette classe Point ne me sert a rien.

    Voila merci de votre future aide.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 585
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 585
    Par défaut
    Hmmm. La question que je me pose, c'est pourquoi Figure aurait deux entiers x et y.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 77
    Par défaut
    En fait je me suis dis qu 'une Figure est composée au minimum d'un point (x,y) , voilà pourquoi j'ai mis deux entiers x et y dans Figure.
    Par exemple dans ma classe Ligne, j'ai deux autres entiers x,y qui correspondent à un "point d arrivée" d'une ligne.
    Mon problème de base était que j'ai une classe Point (sans attributs donc) héritant de Figure, mais j'ai pas l'impression de m'en servir comme je devrais..
    Après peut etre que mettre deux entiers x,y en tant qu'attribut de Forme n'est pas une bonne idée mais c'est ce qui m'a paru le plus logique sur le moment..

    qu'est-ce qui aurait été mieux ?

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 585
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 585
    Par défaut
    Une figure va contenir au minimum un point, bon, je veux bien, peut-être, mais le problème c'est qu'elle contiendra aussi autre chose, et la question c'est comment associer cet "autre chose" au point que tu as déjà dans Figure ? ... Il ne faut certainement pas que ça s'appelle x et y...

    Prenons ton exemple Ligne, composé d'un point et d'un autre point. Tu ne vas pas stocker x et y d'une part et x2 et y2 d'autre part, ça n'a aucun sens. Ce sera directement x1 et y1 et x2 et y2, tout ensemble d'une manière qui a du sens. Ou point1 et point2 si tu préfères.

    Pareil pour toutes les autres figures, sauf à la rigueur le Point lui-même. Mais dans ce cas, ça n'a aucun sens de mettre dans Figure des propriétés que seul Point utilise.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    Pour répondre à la question de base: oui tu va avoir un problème si tu met un Point qui hérite de Figure dans Figure SI ce Point est obligatoire. Parce que tu risque de te retrouver en création d'une infinité de point. Exemple:

    Je crée une ligne, elle a un point (arrivée), ce point à un point, ce dernier point a un point, ce dernier point a un point, ......


    Pour le reste, si toutes tes figures doivent avoir, selon toi, les caractéristiques d'un point, pourquoi tu ne fais pas alors tout hériter de point?

  6. #6
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 77
    Par défaut
    Merci pour vos réponses.

    thelvin, je n'ai pas bien compris quel est le problème dont tu parles.. mes figures ne contiennent que des points et une couleur ca ne m'empeche pas de les faire cohabiter et je n'ai pas de problème au niveau du stockage des objets non plus, je stock toutes les coordonnées dans un arrayList de Figure et ca marche plutot bien je crois.

    ok tchize_ c'est la réponse que j'attendais par contre je n'ai bien pas compris "SI ce Point est obligatoire"?
    Je n'ai pas tout fait hériter de Point car ça me paraissait bizarre que mes différents dessins hérite simplement d'un point, ca paraissait plus logique de tout faire hériter de Figure jep ense.
    quel serait le meilleur moyen, si y'en a un meilleur, d'organiser tout ça ?
    Ce que j'ai fait marche assez bien mais j'ai l'impression que l'organisation du projet n'est pas optimale.[

  7. #7
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 585
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 585
    Par défaut
    Citation Envoyé par tamerla Voir le message
    thelvin, je n'ai pas bien compris quel est le problème dont tu parles.. mes figures ne contiennent que des points et une couleur ca ne m'empeche pas de les faire cohabiter et je n'ai pas de problème au niveau du stockage des objets non plus, je stock toutes les coordonnées dans un arrayList de Figure et ca marche plutot bien je crois.
    C'est pas une question de est-ce que ça peut marcher ou non, c'est une question de bon sens.
    Toutes tes figures n'ont pas le même nombre de points, et pour un cercle par exemple le point que tu gardes n'a pas la même fonction que le point d'une ligne.

    Dans ces conditions, oui, je suppose qu'il est possible, de définir l'un des points dans la classe mère avec un nom sans queue ni tête, et les autres dans les classes filles, pour compléter les points qui manquent, avec des noms cohérents.
    C'est possible, mais est-ce que c'est à faire ? Est-ce que cela apporte quelque chose de bien ? Y a-t-il une logique, de quelque sorte que ce soit, alors que tous les points d'une figure sont égaux, de traiter un point de façon particulière, avec un nom mal fichu et déclaré dans la classe mère, et tous les autres points de manière différente ?
    Moi je vois un manque de cohérence. Un traitement particulier artificiel dans la gestion de ce point à part qui n'est pas censé être à part.

    Citation Envoyé par tamerla Voir le message
    Je n'ai pas tout fait hériter de Point car ça me paraissait bizarre que mes différents dessins hérite simplement d'un point, ca paraissait plus logique de tout faire hériter de Figure jep ense.
    quel serait le meilleur moyen, si y'en a un meilleur, d'organiser tout ça ?
    Ce que j'ai fait marche assez bien mais j'ai l'impression que l'organisation du projet n'est pas optimale.
    Une deuxième question que je me pose, c'est comment un point pourrait compter comme une figure ? Concrètement comment tu dessines un point ?
    Mais admettons que ce soit le cas.

    Une possibilité serait de séparer, d'une part, Coordonnees, la classe qui contient x et y, et Point, la classe héritant de Figure et qui ne contient rien d'autre qu'une Coordonnees.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 77
    Par défaut
    OK merci de ta réponse, je comprends mieux. Je pensais bien qu'il y'avait un probleme de cohérence et d organisation dans mon projet,
    je m'en suis justement rendu compte avec l'objet Cercle..

    Ton idée me plait bien . Sinon est ce que je pourrai par exemple ne plus faire étendre Point de Figure, enlever x et y de Figure et d'utiliser ma classe Point ensuite en fonction de mes besoins ? Le probleme est que je devrais stocker les Points a part des autres Figures ce qui m'embete un peu..
    Si vous avez des conseils je prends merci

Discussions similaires

  1. [ATL] Accéder à un attribut d'une classe qui hérite d'une classe abstraite
    Par chekaoui dans le forum Eclipse Modeling
    Réponses: 0
    Dernier message: 22/07/2014, 15h32
  2. Passer un objet comme attribut d'une classe
    Par Leduc08 dans le forum Ext JS / Sencha
    Réponses: 1
    Dernier message: 05/04/2011, 12h54
  3. passer une classe comme parametre d'une fonction
    Par antoine dpt dans le forum VBA Access
    Réponses: 2
    Dernier message: 10/07/2009, 14h10
  4. Attribut d'une classe du type d'une autre classe
    Par Ragnarok666 dans le forum Débuter
    Réponses: 12
    Dernier message: 14/04/2009, 18h43
  5. Réponses: 3
    Dernier message: 05/12/2006, 14h18

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