Bonsoir,
La question pourrait paraître farfelue, je voudrais savoir où est défini le "length" qui nous permet d'invoquer "machin.lenght" où machin est un tableau de String, int ou autre.
J'espère que c'est clair, merci.
Bonsoir,
La question pourrait paraître farfelue, je voudrais savoir où est défini le "length" qui nous permet d'invoquer "machin.lenght" où machin est un tableau de String, int ou autre.
J'espère que c'est clair, merci.
ce n'est pas une classe. au meme titre que int ou double.
Pouvez vous être plus explicite svp ?
Merci
non, les méhandres de la structure de la java virtual machine sont hors de mes connaissances.Pouvez vous être plus explicite svp ?
Merci
length est défini dans la grammaire java :
http://java.sun.com/docs/books/jls/f...doc.html#27725 (il doit y avoir un lien meilleur avec toute la grammaire).
Il est écrit :
The members of an array type (§10.7) are all of the following:
* Members inherited from its implicit superclass Object (§4.3.2, §20.1)
* The field length, which is a constant (final) field of every array; its type is int and it contains the number of components of the arrayIf Q is an expression name, let T be the type of the expression Q:
* If T is not a reference type, a compile-time error occurs.
* If there is not exactly one accessible (§6.6) member of the type T that is a field named Id, then a compile-time error occurs.
* Otherwise, if this field is any of the following:
o A field of an interface type
o A final field of a class type (which may be either a class variable or an instance variable)
o The final field length of an array type
En (très) gros, on peut considérer les tableaux comme des objets définis de manière implicite (le mot-clé new utilisé en est la preuve), et bénéficiant d'une syntaxe de déclaration particulière définie par Java.
Pourtant cela me semble clair :
Envoyé par millie
a++
Partager