question:
dans java, considérer une classe utilitaire hypothétique unique MyObject statique privé MyObject = new MyObject (); / * package * / dostuff booléen statique (params ... params) { // Faites des choses avec MyObject et Params ... } }
class MyUtils { private static MyObject myObject = new MyObject(); /*package*/static boolean doStuff(Params... params) { // do stuff with myObject and params... } }
Réponse:
Les champs statiques ne sont pas éligibles pour la collection de garbage pendant que leur classe est chargée. Ils ne peuvent être collectés que lorsque le chargeur de classe responsable du chargement de cette classe est lui-même collecté. et les interfaces chargées par le chargeur bootstrap peuvent ne pas être déchargées.
"Par conséquent, dans l'exemple fourni, MyObject persistera tant que la classe Myutils sera chargée. Il ne sera pas collecté à des ordures tant que le chargeur de classe qui a chargé Myutils est également éligible à la collecte des ordures.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3