J'ai une liste de chaînes constantes que je dois afficher à différents moments au cours de mon Java programme.
En C, je pourrais définir les chaînes comme ceci en haut de mon code:
#define WELCOME_MESSAGE "Hello, welcome to the server"
#define WAIT_MESSAGE "Please wait 5 seconds"
#define EXIT_MESSAGE "Bye!"
Je me demande quelle est la manière habituelle de faire ce genre de choses en Java?
En général, vous définiriez ceci vers le haut d'une classe:
public static final String WELCOME_MESSAGE = "Hello, welcome to the server";
Bien sûr, utilisez la visibilité de membre appropriée (public
/private
/protected
) en fonction de l'endroit où vous utilisez cette constante.
Cela ressemblerait à ceci:
public static final String WELCOME_MESSAGE = "Hello, welcome to the server";
Si les constantes ne sont utilisées que dans une seule classe, vous voudriez les transformer en private
au lieu de public
.
public static final String YOUR_STRING_CONSTANT = "";
Une autre norme typique du secteur consiste à avoir un fichier de classe nommé Constants.Java contenant toutes les constantes à utiliser dans tout le projet.
Vous pouvez utiliser
public static final String HELLO = "hello";
si vous avez plusieurs constantes de chaîne, vous pouvez utiliser un fichier de propriétés externe/une simple classe "titulaire constant"
simplement utiliser
final String WELCOME_MESSAGE = "Hello, welcome to the server";
la partie principale de cette instruction est le mot clé "final".
Nous déclarons habituellement la constante sous la forme static
. La raison en est que Java crée des copies de variables non statiques chaque fois que vous instanciez un objet de la classe.
Donc, si nous faisons les constantes static
, ce ne sera pas le cas et économiserait de la mémoire.
Avec final
, nous pouvons rendre la variable constante.
Par conséquent, la meilleure pratique pour définir une variable constante est la suivante:
private static final String YOUR_CONSTANT = "Some Value";
Le modificateur d'accès peut être private/public
En fonction de la logique applicative.