(Lær hvordan og hvornår du kan fjerne denne skabelonbesked)
I objektorienteret programmering med klasser er en instansvariabel en variabel defineret i en klasse (dvs. en medlemsvariabel), for hvilken hvert instantieret objekt i klassen har en separat kopi, eller instans. En instansvariabel har ligheder med en klassevariabel, men er ikke-statisk. en instansvariabel er en variabel, som er deklareret i en klasse, men uden for konstruktører, metoder eller blokke. Instansvariabler oprettes, når et objekt instantieres, og de er tilgængelige for alle konstruktører, metoder eller blokke i klassen. Der kan gives adgangsmodifikatorer til instansvariablen.
En instansvariabel er ikke en klassevariabel, selv om der er lighedspunkter. Det er en type klasseattribut (eller klasseegenskab, -felt eller -datamedlem). Den samme dikotomi mellem instans- og klassemedlemmer gælder også for metoder (“medlemsfunktioner”); en klasse kan have både instansmetoder og klassemetoder.
Hver instansvariabel lever i hukommelsen i hele livet for det objekt, som den tilhører.
Variabler er egenskaber, som et objekt kender om sig selv. Alle instanser af et objekt har deres egne kopier af instansvariabler, også selv om værdien er den samme fra et objekt til et andet. En objektinstans kan ændre værdierne for sine instansvariabler uden at påvirke alle andre instanser. Instansvariabler kan bruges af alle metoder i en klasse, medmindre metoden er erklæret som statisk.