Bubuss
Messages postés147Date d'inscriptionsamedi 7 juin 2003StatutMembreDernière intervention 8 décembre 2007
-
1 août 2006 à 18:00
cs_brico07
Messages postés60Date d'inscriptionjeudi 12 avril 2007StatutMembreDernière intervention16 mai 2012
-
12 avril 2007 à 14:41
Salut tout le monde,
J'ai plusieur objet (ex : Bateau, Avion, Voiture) et je souhaiterai faire une collection d'objets issues de ces classes différentes...
maCollection : monBateau1
monAvion1
monAvion2
maVoiture1
monBateau2
(...)
Voilà donc comment je peux faire pour enregistrer tout ses objets étant de type différents dans une seule collection pour pouvoir y accéder et savoir quel est la couleur de maVoiture1 par exemple et le nombre de réacteur de monAvion2 ?
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 1 août 2006 à 18:17
Salut,
Moi ce que je ferais c'est une classe Vehicule, qui contient des enfants (Bateau, Avion, etc), et je stockerais tout ces éléments une collection typée (voire Generics).
Ensuite, si tu veux accéder à un élément globale comme la couleur d'une auto, suffit d'appeler la méthode correspondante de la classe Vehicule car à priori chaque Vehicule peut avoir une couleur (et pas seulement une auto).
Pour des attributs qui seraient dépendant d'un sous-type, comme par exemple la taille d'un pot d'échappement (qu'on ne trouve pas sur un avion ) tu peux faire un test avec le mot clef is :
if(monVehicule is Auto)
Lutinore
Messages postés3246Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 201241 1 août 2006 à 18:57
Oui comme Bidou à part que j'aurais dérivé d'une interface IVehicule mais comme dans ton exemple tu veux connaîtres le nombre de réacteurs et qu'une voiture n'a pas de réacteur tu vas te retrouver a faire des casts et des "is, "as" alors tu peux bien tout mettre dans une collection d'objets ( ArrayList ).
Bubuss
Messages postés147Date d'inscriptionsamedi 7 juin 2003StatutMembreDernière intervention 8 décembre 2007 1 août 2006 à 22:32
oulà oulà
Si quelqu'un aurait un exemple se serai super! Parsque les interfaces j'en ai fait une il y a 1 mois mais je ne maitrise pas et je ne comprends pas trop leur intéret...
J'ai pensé à un truc que je suis en train de mettre en place pour voir si ça peut le faire... il sajirai de faire une classe objet "unItem" qui a une propriété objet avion, une objet voiture et une objet bateau et ensuite créer une liste de type "unItem"...
Il suffirai ensuite de trouver la propriété qui n'est pas null pour savoir la nature de l'item..
bon je ne penses pas du tout que se soit très pro et surtout ça instancie beaucoup de propriété pour rien (ici les 2/3 quand même lol)
Je suis très curieux de voir un exemple avec une interface!
cs_brico07
Messages postés60Date d'inscriptionjeudi 12 avril 2007StatutMembreDernière intervention16 mai 20121 12 avril 2007 à 14:41
bonjour,
je viens de commencer en C#, et je dois écrire un Programme qui me permet de déssiner deux types de rectangles, de sorte que mes premiers rectangle du Types "un", je puisse les introduirent dans le rectangle du type "deux" à une position quelconque sans qu'il y ait superpositions de deux rectangles du type "un". et ils ne doivent pas déborder le rectangle de type "deux".
mersi de m'aider!!!!!!!