Skip to main content

Quali sono le variabili statiche?

Le variabili statiche, chiamate anche variabili globali, sono pezzi di dati che non sono affiliati con una particolare istanza di una classe.Può esistere solo un valore per queste variabili indipendentemente dal numero di oggetti di classe creati.A seconda del contesto, le variabili statiche possono essere più flessibili o più restrittive delle loro controparti variabili di istanza, che hanno i propri valori discreti per ogni oggetto specifico di un tipo di classe.Nei linguaggi di programmazione orientati agli oggetti, una buona pratica di programmazione di solito impone che l'uso di oggetti statici, metodi o variabili sia ridotto al minimo, ma hanno applicazioni utili.

Una delle ragioni principali per cui le variabili statiche sono considerate a volte restrittive è dovuto al momentoNon può mai esistere più di un valore per una variabile.Qualsiasi assegnazione alla variabile sovrascrive la precedente e qualsiasi informazione nel valore precedente viene persa.Senza più copie della variabile, non è possibile archiviare più valori di dati.Se il valore viene modificato, ogni oggetto che colpisce deve funzionare con il nuovo valore e se il vecchio valore non doveva essere eliminato, la modifica potrebbe rivelarsi dannosa per ogni oggetto di istanza di un particolare tipo di classe.A meno che la variabile non sia in qualche modo bloccata alla creazione, il rischio di un cambiamento imprevisto e il successivo caos che potrebbe provocare sugli oggetti fa sì che alcuni programmatori evitino variabili statiche quando possibile.

Le variabili statiche a volte possono essere considerate flessibili per lo stesso motivo per cui possono essere chiamatirestrittivo.Anche se un valore delle variabili non è bloccato, le modifiche pianificate al suo valore possono avere effetti positivi.Una variabile condivisa tra tutti gli oggetti di una classe è garantita per essere coerente e può essere utilizzata sia all'interno che all'esterno della classe con fiducia che il suo valore è sempre lo stesso.Le variabili che sono statiche hanno una varietà di applicazioni utili, in particolare nel mantenimento delle costanti e nell'implementazione della serializzazione.Java in particolare si basa fortemente su questo meccanismo di serializzazione statica.

Esistono alcune regole generali che i programmatori usano spesso mentre implementano variabili statiche.Queste variabili di solito funzionano meglio come piccoli valori di dati perché oggetti statici di grandi dimensioni possono rendere un programma molto più rigido di quanto non sia.I valori di piccoli dati possono essere modificati rapidamente e facilmente senza troppa paura di introdurre errori.I grandi oggetti statici impiegano più tempo e sforzi per cambiare e sono anche più inclini ad avere un errore introdotto che interromperà tutti gli oggetti di classe.Queste sono linee guida, non regole infrangibili, e potrebbero esserci usi per variabili sia piccole che grandi, a seconda del programma.