> Bonjour � tous,
>Voil� ce que j'essaye de faire:
>
>Ca c'est mon objet de base:
>
> private static class TypeInfo
> {
> public int ID;
> public String name;
> public int groupID;
> }
>
>Et voil� le tableau (toujours static), que je cherche � cr�er (quelques
>tentatives de syntaxes sont indiqu�es):
>
> private static TypeInfo[] types =
> {
> {1, "foo", 1} // ne marche pas...
> (1, "foo", 1) // ne marche pas non plus...
> TypeInfo() {1, "foo", 1} // idem...
>
>Grr... Quand je pense que c'�tait l'enfance de l'art en C/C++...
>Quelqu'un sait-il comment faire �a en Java ? Je ne veux pas avoir �
>initialiser ce tableau en passant par un constructeur (c'est un static,
>je veux pouvoir y acc�der sans instancier la classe qui l'englobe).
Sans passer par un constructeur, c'est impossible. En effet, la notion de struct,
h�rit�e du C, n'existe aps en Java et est totallement et irr�m�diablement rempalc�e
par celle de classe.
Ton TypeInfo est une classe, et tu peux lui donner un constructeur. Je ne vois
d'ailleurs pas le mal qu'il y a � cela, puisque �a te permettra de d�finir dans cette
classe des traitements concernant ces types. Par exemple, surcharger les m�thodes
e"quals, compareTo pour ordonner des TypeInfo dans un Set, ce qui sera plus agr�able
pour retrouver � quel type correspond un objet de ton application, et bien plus rapide
que le parcours d'un tableau.
En fait, le probl�me est que nous parlons dans des paradigmes diff�rents : tu as un
paquet de donn�es, sur lesquelles tu veux r�aliser des traitements, alors que j'ai un
objet, qui dispose de capacit�s de travail, ce qui retourne compl�tement la question.
R�fl�chis bien au contexte dans lequel tu utilises ce TypeInfo, et tu verras qu'il y a
s�rement des traitements qui peuvent �tre plac�s dans cette classe (r�cup�rer le name
� partir de ID et/ou groupID,...).
Enfin, si tu veux pouvoir l'instancier or de la classe qui contient cette classe,
c'est s�rement un indice montrant clairement que la classe TypeInfo m�rite d'�tre �
aprt (que ce soit dans le m�me fichier ou dans un autre).
>
> Aur�lien Mazurie
--
Nicolas Delsaux
"Rappelez-vous l'essentiel: le capitalisme, c'est l'exploitation de l'homme par
l'homme. Le syndicalisme, c'est le contraire ! "
Coluche