Maison > Java > javaDidacticiel > Constructeur ou déclaration : où dois-je initialiser mes variables Java ?

Constructeur ou déclaration : où dois-je initialiser mes variables Java ?

Mary-Kate Olsen
Libérer: 2024-12-01 07:06:17
original
479 Les gens l'ont consulté

Constructor vs. Declaration: Where Should I Initialize My Java Variables?

Choisir l'initialisation des variables : constructeur ou déclaration

Lors de l'initialisation des variables en Java, les développeurs peuvent choisir entre l'initialisation dans le constructeur ou en dehors du constructeur. Cette question explore les avantages et les inconvénients de chaque approche.

Inside Constructor (Style 1) :

<br>classe publique ME {</p>
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">private int i;

public ME() {
     this.i = 100;
}
Copier après la connexion

}

Constructeur extérieur (Style 2) :

<br>classe publique ME {</p>
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">private int i = 100;

public ME() {
}
Copier après la connexion

}

Convention recommandée :

La convention recommandée, telle qu'indiquée dans la réponse acceptée , est le Style 2 (initialisation dans la déclaration). Ce style offre les avantages suivants :

  • Initialisation claire : La valeur d'initialisation est immédiatement visible lors de la lecture de la déclaration de variable.
  • Cohérence du constructeur : Les initialisations sont cohérentes dans tous les constructeurs, réduisant ainsi le risque d'omission ou répétition.

Exceptions à la Convention :

Bien sûr, il existe des exceptions où le style 1 est plus approprié :

  • Lorsque différents constructeurs initialisent la variable avec des valeurs différentes ou sur la base de calculs.
  • Pour les variables manipulées avant l'appel du constructeur (par exemple, via un bloc statique).

En général, le style 2 doit être utilisé autant que possible pour améliorer la lisibilité et la maintenabilité du code.

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!

Article précédent:Dois-je remplacer la méthode « clone() » en Java, et si oui, comment puis-je le faire en toute sécurité ? Article suivant:Comment puis-je m'assurer que tous les threads sont terminés avant les opérations de base de données dans une application Java multithread ?
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Derniers numéros
Rubriques connexes
Plus>
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal