Lors de la création d'un tableau d'objets, il est important de noter la différence entre créer le tableau lui-même et instancier les objets qu'il contient.
En Java, un tableau de références pointe vers l'emplacement des objets en mémoire, plutôt que de stocker les objets eux-mêmes. Le code suivant crée un tableau de quatre références à des objets de classe A :
<code class="java">A[] arr = new A[4];</code>
Pour accéder aux objets dans le tableau, chaque référence doit être affectée à un objet réel. Cela implique de créer les objets à l'aide du nouveau mot-clé et de les attribuer aux éléments du tableau. Le code suivant instancie quatre objets de classe A et les affecte au tableau :
<code class="java">for (int i = 0; i < 4; i++) { arr[i] = new A(); }</code>
En C , l'utilisation de new A[4] crée directement un tableau de quatre objets , alors qu'en Java, une étape supplémentaire d'attribution d'objets aux références du tableau est requise.
Pour accéder aux méthodes et aux variables des objets dans le tableau, assurez-vous qu'elles sont instanciés avant de tenter de les utiliser. Si vous ne le faites pas, des exceptions de pointeur nul seront générées.
Par exemple, l'extrait de code suivant crée un tableau de deux objets de classe Point et définit leurs coordonnées x et y :
<code class="java">Point[] points = new Point[2]; for (int i = 0; i < 2; i++) { points[i] = new Point(i, i); }</code>
Désormais, le code peut accéder aux coordonnées x et y de chaque point à l'aide des méthodes getX() et getY(), sans rencontrer d'exceptions de pointeur nul.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!