dania の悪夢
AFK
Hello,
ayant commencé a apprendre le java pas plus tard que samedi passé, je suis tombé sur un gros problème ... pas de POINTEURS ! or le pointeur fait tout
Donc la question est simple, comment fait-on pour s'en passer?
Mais je vais donner un exemple de ce que je veux faire.
Disons que j'ai une classe Poule qui fonctionne très bien.
En fonction de certaines actions, je suis censé pouvoir créer de nouvelles poules régulièrement.
Dans les autres languages comme le C, hop, un petit array de pointeurs vers des objets de type Poule, et on ajoute une Poule chaque fois qu'on en a besoin avec un index de remplissage et c'était fait. Pour tuer une poule, il suffisait d'appeler le destructeur de l'objet et de la supprimer dans le tableau. FACILE
Mais en Java, pas de Pointeurs vers mes Poules, Pas possible non plus de définir un array of Poule
du genre "Private Poule[] mesPoulets = new Poule[MaxPoules]" à partir de ma classe Poule (et de la classe String non plus, et ca aussi c'est mal).
La question est donc, mais comment faire ? Existe-t-il une méthode cachée pour avoir et utiliser les pointeurs de ses objets ? Ou comment s'y prendre autrement (sans instancier 10000 objets de type Poule à la main) pour arriver a gérer ce nombre variable de Poule?
Dans mes recherches j'ai trouvé des références à un truc qui s'appelle des "références" justement, mais ca ne semble pas pouvoir résoudre mon problème... Help Me.
Après je vous demanderai des détails sur les java.AWT.event.* qui me posent un problème avec les textField car quand j'ai un TextField T1 qui réagit aux events, je ne trouve pas le moyen de détecter que c'est T1 himself qui a fait l'appel.
Pourtant j'ai tout retourné pas mal de fois, mon TextChangedEvent(TextEvent txt) est bien appellé
je fais donc un "Object source = txt.getSource();" et, d'après ce que j'ai compris de la doc, un simple "if (Source == T1)" et le code qui suit entre {} est exécute. Mais non, ça ne passe pas. Ou se trouve le truc qui cloche ? Pourtant un txt.toString() ressemble fortement à un T1.toString(); (encore heureux puisque ce sont censé être les mêmes objets).
Ou se trouve mon erreur ?
La seule solution (barbare et grotesque) serait de créer une classe par objet graphique. Mais bon, sa ne me tente pas de créer 50Objets sous prétexte que les évents soient bizarres (surtout que je risque d'avoir des choses plus complexe a faire au dessus de ca).
Help ME | Tasukete kudasai | aidez moi
dania.
ayant commencé a apprendre le java pas plus tard que samedi passé, je suis tombé sur un gros problème ... pas de POINTEURS ! or le pointeur fait tout
Mais je vais donner un exemple de ce que je veux faire.
Disons que j'ai une classe Poule qui fonctionne très bien.
En fonction de certaines actions, je suis censé pouvoir créer de nouvelles poules régulièrement.
Dans les autres languages comme le C, hop, un petit array de pointeurs vers des objets de type Poule, et on ajoute une Poule chaque fois qu'on en a besoin avec un index de remplissage et c'était fait. Pour tuer une poule, il suffisait d'appeler le destructeur de l'objet et de la supprimer dans le tableau. FACILE
Mais en Java, pas de Pointeurs vers mes Poules, Pas possible non plus de définir un array of Poule
La question est donc, mais comment faire ? Existe-t-il une méthode cachée pour avoir et utiliser les pointeurs de ses objets ? Ou comment s'y prendre autrement (sans instancier 10000 objets de type Poule à la main) pour arriver a gérer ce nombre variable de Poule?
Dans mes recherches j'ai trouvé des références à un truc qui s'appelle des "références" justement, mais ca ne semble pas pouvoir résoudre mon problème... Help Me.
Après je vous demanderai des détails sur les java.AWT.event.* qui me posent un problème avec les textField car quand j'ai un TextField T1 qui réagit aux events, je ne trouve pas le moyen de détecter que c'est T1 himself qui a fait l'appel.
Pourtant j'ai tout retourné pas mal de fois, mon TextChangedEvent(TextEvent txt) est bien appellé
je fais donc un "Object source = txt.getSource();" et, d'après ce que j'ai compris de la doc, un simple "if (Source == T1)" et le code qui suit entre {} est exécute. Mais non, ça ne passe pas. Ou se trouve le truc qui cloche ? Pourtant un txt.toString() ressemble fortement à un T1.toString(); (encore heureux puisque ce sont censé être les mêmes objets).
Ou se trouve mon erreur ?
La seule solution (barbare et grotesque) serait de créer une classe par objet graphique. Mais bon, sa ne me tente pas de créer 50Objets sous prétexte que les évents soient bizarres (surtout que je risque d'avoir des choses plus complexe a faire au dessus de ca).
Help ME | Tasukete kudasai | aidez moi
dania.