Est une Chaîne Littérale de la Piscine d'une collection de références à l'Objet de type String, Ou une collection d'Objets

Je suis tout confus après la lecture de l'article sur javaranch site par Corey McGlone, l'auteur de La SCJP Bout de la Ligne. les Chaînes nommées, Littéralement et l'
SCJP la version 6 de Java Guide du Programmeur par Kathy Sierra (co-fondateur de javaranch) et Bert Bates.

Je vais essayer de citer ce que M. Corey et Mme Kathy Sierra avons cité à propos de la Chaîne Littérale de la Piscine.

1. Selon M. Corey McGlone :

  • Littéral de chaîne de la Piscine est une Collection de références qui pointent vers les Objets String.

  • String s = "Hello"; (Supposons qu'il n'y est Aucun objet sur le Tas nommé "Hello"),
    va créer un objet de type String "Hello" sur le tas, et placer une référence à cet objet dans la Chaîne de caractères Littérale de la Piscine (Table de Constantes)

  • String a = new String("Bye"); (Supposons qu'il n'y est Aucun objet sur le Tas nommé "au Revoir", new opérateur va obliger la JVM pour créer un objet sur le Tas.

Maintenant l'explication de "new" opérateur pour la création d'une Chaîne de caractères et sa référence est peu à confusion, dans cet article, je suis en train de monter le code et
explication de l'article lui-même comme il est ci-dessous.

public class ImmutableStrings
{
    public static void main(String[] args)
    {
        String one = "someString";
        String two = new String("someString");

        System.out.println(one.equals(two));
        System.out.println(one == two);
    }
}

Dans ce cas, nous finissons avec un comportement légèrement différent en raison de la clé "new."
Dans un tel cas, les références aux deux littéraux de Chaîne sont encore mis dans la table de constantes (la Chaîne de caractères Littérale de la Piscine),
mais, quand vous venez pour le mot-clé "new," la JVM est obligé de créer une nouvelle Chaîne de caractères de l'objet au moment de l'exécution,
plutôt que d'utiliser l'une à partir de la table de constantes.

Voici le schéma de l'expliquer..

Est une Chaîne Littérale de la Piscine d'une collection de références à l'Objet de type String, Ou une collection d'Objets

Donc, signifie-t-il, que la Chaîne de caractères Littérale de la Piscine a aussi une référence à cet Objet ?

Voici le lien vers l'Article de Corey McGlone

http://www.javaranch.com/journal/200409/Journal200409.jsp#a1

2. Selon Kathy Sierra et Bert Bates dans la SCJP livre:

  • Pour rendre Java plus efficace en terme de mémoire, la JVM de mettre de côté une zone spéciale de la mémoire appelée la "constante de Chaîne de la piscine", lorsque le compilateur
    rencontre un Littéral de Chaîne, il vérifie la piscine pour voir si une Chaîne identique existe déjà ou pas. Si non, alors il crée un
    nouvelle Chaîne Littérale de l'Objet.

  • String s = "abc"; //Crée un objet de type String et une variable de référence....

    c'est très bien, mais ensuite, j'ai été confondu par cette déclaration:

  • String s = new String("abc") //Crée deux objets, et une variable de référence.

    Il est dit dans le livre qu'.... un nouvel objet String en normal(non-chauffée) de la mémoire , et le "s" se réfère à elle... alors que
    supplémentaires littérale "abc" sera placé dans la piscine.

    Les lignes ci-dessus dans le livre d'entrer en collision avec l'une dans l'article de Corey McGlone.

    • Si la Chaîne Littérale de la Piscine est une collection de références à l'objet de type String comme mentionné par Corey McGlone, alors pourquoi wil le littéral d'objet "abc" être placé dans la piscine (comme mentionné dans le livre)?

    • Et d'où vient cette Chaîne de caractères Littérale de la Piscine résident?

Veuillez effacer ce doute, bien que ce ne sera pas trop pendant l'écriture d'un code, mais il est très important de l'aspect de la gestion de la mémoire, et
c'est la raison pour laquelle je veux effacer cette funda.

  • La façon dont le groupe est géré pourrait à un certain degré dépend de la JVM. Tant qu'une chose n'est pas fixé par la spécification du langage, ils sont libres d'expérimenter. Donc, si la piscine est titulaire des références ou des objets pourrait bien dépendre, je crois.
  • Je suis récemment tombé sur exactement la même question avec les 2 mêmes ressources que vous avez mentionné. Je pense que par l'instruction objet "abc" sera placé dans la piscine dans le livre, l'auteur fait référence à l'objet "abc" sera stocké dans la piscine. Droit? Accepté réponse est assez instructif, mais je pense que c'est ce qui est posée.