Mi piace sapere alcuni articoli di baseCome utilizzare le variabili statiche in modo efficiente?
Sto sviluppando un'applicazione Android e quindi mi portano a problemi di gestione della memoria. Guardato di recente un video relativo alla gestione della memoria da parte di Google ho scoperto che l'uso di una variabile statica in un'attività causa perdite di memoria anche in cambio di orientamento dell'attività in quanto mantiene i riferimenti ad altri oggetti nell'attività, L'uomo in video diceva che usando statico variabile con l'aiuto di un metodo statico risolverà il problema, mi piacerebbe sapere come un metodo statico risolverà il problema?
mi piace conoscere il modo migliore per utilizzare variabile statica nella mia richiesta, per esempio ho una classe globale in cui I negozi di alcune variabili statiche come indica il nome di questi valori saranno valutati e modificati da diverse attività, Come un esempio che hanno una larghezza variabile statica e attualmente aggiorno simili
Global.WIDTH = 12
o scarica come int width = Global.WIDTH
da diverse attività, questo è un metodo corretto, o devo usare un statico metodo per ottenere la larghezza come int width = Global.getWidth();
, allora qual è la differenza tra questi due, qual è il modo migliore per farlo,
quali sono altre cose importanti che dobbiamo tenere a mente quando si tratta di variabili statiche?
a tutti e scusate Grazie per la lunga descrizione ...
Utilizzare 'static' quando il campo/metodo deve appartenere alla classe e non a qualsiasi riferimento a un oggetto. Se usato in 'Activity's, raccomanderei l'uso di' static final' per dichiarare il campo come costante invece di avere un semplice campo 'statico '. –
Grazie per la rapida risposta .. Non posso dichiararlo definitivo perché il suo valore cambierà come per dispositivo basato su un calcolo –
Puoi dichiararlo come 'statico finale 'e definire i valori in un metodo' static {} '. Si noti che questi valori, anche se sono * dinamici *, devono * essere * caricati una sola volta nell'avvio dell'applicazione, non in qualsiasi momento dell'applicazione. Se si desidera avere larghezza e altezza diverse per la visualizzazione orizzontale, aggiungere altri due campi invece di ricalcolare i valori. –