Vad är statiska variabler?

statiska variabler, även kallade globala variabler, är data som inte är anslutna till en viss instans av en klass. Endast ett värde för dessa variabler kan existera oavsett antalet klassobjekt som skapas. Beroende på sammanhanget kan statiska variabler vara antingen mer flexibla eller mer restriktiva än deras instansvariabla motsvarigheter, som har sina egna diskreta värden för alla specifika objekt av en klasstyp. På objektorienterade programmeringsspråk dikterar god programmeringspraxis vanligtvis att användningen av statiska objekt, metoder eller variabler hålls till ett minimum, men de har användbara tillämpningar.

En viktig anledning till att statiska variabler anses vara restriktiva ibland beror på att inte mer än ett värde någonsin kan existera för en variabel. Varje uppdrag till variabeln skriver över den föregående, och all information i föregående värde går förlorad. Utan flera kopior av variabeln kan flera datavärden inte lagras. Om värdetändras, varje objekt som det påverkar måste fungera med det nya värdet, och om det gamla värdet inte var tänkt att raderas kan förändringen visa sig vara skadlig för varje instansobjekt av en viss klasstyp. Såvida inte variabeln på något sätt är låst vid skapandet, risken för oförutsedd förändring och den efterföljande förödelsen det kan göra för objekt får vissa programmerare att undvika statiska variabler när det är möjligt.

statiska variabler kan ibland betraktas som flexibla av samma anledning att de kan kallas restriktiv. Även om en variabel inte är låst kan planerade ändringar av dess värde ha positiva effekter. En variabel som delas mellan alla objekt i en klass är garanterad att vara konsekvent och kan användas både inom och utanför klassen med förtroende för att dess värde alltid är detsamma. Variabler som är statiska har en mängd användbara applikationer, särskilt underhåll av COnstanter och implementering av serialisering. Java förlitar sig särskilt starkt på denna statiska serialiseringsmekanism.

Det finns vissa allmänna regler som programmerare ofta använder vid implementering av statiska variabler. Dessa variabler fungerar vanligtvis bäst som små datavärden eftersom stora statiska objekt kan göra ett program mycket styvare än det måste vara. Små datavärden kan snabbt och enkelt ändras utan för mycket rädsla för att införa fel. Stora statiska föremål tar mer tid och ansträngning att förändras och är också mer benägna att få ett fel som introduceras som skulle störa alla klassobjekt. Dessa är riktlinjer, inte obrytbara regler, och det kan finnas användningar för både små och stora variabler, beroende på programmet.

ANDRA SPRÅK

Hjälpte den här artikeln dig? Tack för feedbacken Tack för feedbacken

Hur kan vi hjälpa? Hur kan vi hjälpa?