[Reflection] caster un tableau dynamiquement
Bonjour,
Je suis face à un probleme de cast. Je dois faire un client générique permettant de créer dynamiquement des objets. Pour cela, je passe par la reflexivité de JAVA.
Mais je suis face à un probleme de tableau... Je m'explique :
Imaginons une classe Polygon, avec une méthode setPoints(Point[] points)
Si je veux, de manière générique, construire le tableau de Point, il me faut connaitre son type (Point). Et ca je ne le sais pas.
La seule chose que je peux faire c'est lui passer un tableau Object[] mais lorsque j'appelle la méthode récursive invoke, une exception est levée car la méthode attend un paramètre de type Point[] et non Object[]...
Donc ma question est la suivante, savez vous comment créer dynamiquement un tableau typé ?
Merci
Re: [reflect] caster un tableau dynamiquement
Citation:
Envoyé par Pignoufy
Si je veux, de manière générique, construire le tableau de Point, il me faut connaitre son type (Point). Et ca je ne le sais pas.
Je comprend pas cette phrase. Au moment ou tu les rentre dans le tableau, tu ne sais pas encore si ce sont des points ?
Et ta class Point, c'est une classe à toi ou la classe Pint par défaut de Java ??
Re: [reflect] caster un tableau dynamiquement
Citation:
Envoyé par Pignoufy
Donc ma question est la suivante, savez vous comment créer dynamiquement un tableau typé ?
Merci
Bonjour,
oui ça existe, regarde les méthodes :
Code:
1 2
| java.lang.Array.newInstance(Class componentType, int[] dimensions)
java.lang.Array.newInstance(Class componentType, int length) |
Re: [reflect] caster un tableau dynamiquement
Citation:
Envoyé par Pignoufy
Donc ma question est la suivante, savez vous comment créer dynamiquement un tableau typé ?
Merci
Bonjour,
oui ça existe, regarde les méthodes :
Code:
1 2
| java.lang.reflect.Array.newInstance(Class componentType, int[] dimensions)
java.lang.reflect.Array.newInstance(Class componentType, int length) |