Question

Pouvez-vous me dire combien de temps une vie variable dans un programme (en Java). à savoir les variables déclarées à l'intérieur des méthodes, des variables utilisées dans les paramètres, variables statiques, variables utilisées pour revenir à partir d'un procédé, etc.

Merci.

Était-ce utile?

La solution

  1. Les références déclarées dans les méthodes hors de portée lorsque les sorties de la méthode.
  2. Les paramètres transmis à des méthodes ne seront pas admissibles à GC jusqu'à ce qu'il n'y a plus de références à eux ou qu'ils sont hors de portée.
  3. les références statiques sont associées à une classe et vivent aussi longtemps que la classe est chargée.
  4. références retournées ne seront pas admissibles à GC jusqu'à ce qu'il n'y a plus de références à eux ou qu'ils sont hors de portée.

Autres conseils

Les objets Java sont garantis pour vivre aussi longtemps qu'ils sont référençables par un transitif fermeture du définie. Ceci est une approximation conservatrice de objects¹ en direct de l'application.

Modifier Cette question est préoccupante durée de vie des objets , ou la portée des variables ? Nous avons une certaine terminologie mixte passe.

Un objet ¹ en direct est un objet qui sera référencé à nouveau avant l'application se termine.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top