2017-08-31 3 views
-3

Ma classe contient une variable statique et une méthode statique et sa mémoire ne se libère pas et tout le temps que crée un nouvel objet. Donc, ma question est, c'est à cause de membres statiques ou autre chose?Quelle sera la durée de vie d'une classe si elle contient des variables statiques et des méthodes statiques?

+1

doit être autre chose. – TrevorBrooks

+1

Pouvez-vous montrer le code de cette classe et l'utilisation de l'échantillon? – Losiowaty

+0

Y a-t-il un effet de variable statique sur le cycle de vie de la classe? –

Répondre

0

La durée de vie d'un objet n'est pas affectée s'il comporte des variables statiques ou des méthodes statiques. Une méthode statique est une méthode de la classe entière. De même, une variable statique est une variable qui appartient à la classe, pas à une instance.

Pensez à une usine automobile et une voiture. Une méthode statique est quelque chose que l'usine automobile fait, comme construire une voiture. Raconter l'usine automobile pour construire une nouvelle voiture n'a aucun effet sur les voitures qui ont été construites l'année dernière.

De même, le calendrier sur le mur dans l'usine automobile (une variable statique de la classe de voiture) n'a aucun impact sur les voitures qui ont été construites l'année dernière. Si vous changez le calendrier dans l'usine automobile pour montrer un jour à partir de 5 ans dans le futur, cela ne rend pas les voitures construites l'année dernière soudainement 5 ans de plus.

Si votre objet n'est pas publié, cela signifie que quelque chose y est fortement référencé. Vous pouvez avoir un cycle de conservation.