« Programmation Java/Instanciation et cycle de vie » : différence entre les versions

Contenu supprimé Contenu ajouté
Aucun résumé des modifications
Ligne 157 :
</syntaxhighlight>
 
Le code du constructeur <code>&lt;init&gt;(String name)</code> contient alors cette séquence générée par le compilateur :
<syntaxhighlight lang="java">
super("Exemple"); // (0)
Ligne 166 :
</syntaxhighlight>
 
Les lignes d'initialisation (de (1) à (3) pour l'exemple précédent) sont donc insérées juste après l'appel au constructeur de la classe de base, dans tous les constructeurs de la classe.
L'ordre des initialisations est donc très important.
 
L'ordre des initialisations est donc très important.
Dans l'exemple précédent, si les lignes (2) et (3) sont interverties, une exception de type <code>NullPointerException</code> est lancée lors de la construction de l'objet.