Les chaînes sont des objets en Java : pourquoi pas de « nouveau » pour la création ?
Les chaînes en Java sont des objets, mais contrairement à d'autres objets, elles sont généralement créés sans utiliser le mot-clé « nouveau ». Cette pratique soulève la question de savoir pourquoi « nouveau » n'est pas nécessaire pour la création de chaînes.
Raison de ne pas utiliser « nouveau » : internement de chaînes
Plutôt que de créer un nouveau Objet chaîne Chaque fois qu'un littéral de chaîne est utilisé, Java exécute un processus appelé internement. L'internement implique de stocker des littéraux de chaîne dans un pool central, appelé pool de chaînes. Lorsqu'une chaîne littérale est rencontrée, elle est vérifiée par rapport au pool de chaînes. Si une chaîne littérale identique existe déjà, une référence à la chaîne existante est renvoyée, au lieu de créer un nouvel objet.
Exemple :
Considérez le code suivant :
String str1 = "Hello"; String str2 = "Hello";
Dans cet exemple, « str1 » et « str2 » font référence au même objet String dans le pool de chaînes, bien qu'ils aient été créés séparément. En conséquence, « str1 == str2 » est évalué à vrai, indiquant qu'ils sont physiquement égaux.
Avantage du stage :
Le stage optimise les performances en réduisant le nombre d'objets String créés, en particulier pour les chaînes fréquemment utilisées. Par exemple, dans une boucle où un littéral de chaîne est utilisé plusieurs fois, un seul objet String est créé, plutôt que de le recréer à chaque itération, ce qui entraîne d'importantes économies de mémoire.
Création de chaînes avec « nouveau »
Bien que le stage soit l'approche recommandée, il est toujours possible de créer des chaînes en utilisant « nouveau ». Cependant, il est important de noter que cela peut entraîner la création de plusieurs objets String pour la même valeur de chaîne, ce qui peut avoir un impact sur l'utilisation de la mémoire et les performances.
Conclusion :
L'absence de « nouveau » dans la création de chaînes en Java provient de l'utilisation de l'internement de chaînes. L'internement améliore les performances en réduisant la création d'objets inutiles et en favorisant l'efficacité de la mémoire, ce qui en fait la méthode privilégiée pour créer des chaînes.
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!