Lecture overview -- Keyboard shortcut: 'u'  Previous page: Klassevariable og klassemetoder -- Keyboard shortcut: 'p'  Next page: Initialisering af klassevariable i Java -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  slide -- Keyboard shortcut: 't'  Help page about these notes  Alphabetic index  Course home  Play sound for this page -- Keyboard shortcut: 'y'  Page 20 : 33
Forelæsningsnoter i Objekt-orienteret Programmering
Objekt-orienteret programmering i Java, del 2
Statiske egenskaber af en klasse i Java

Statiske egenskaber, erklæret ved brug af nøgleordet static, kendes også fra C. Men det er vigtigt at forstå, at der er stor forskel på betydningen af static i C og Java. I Java er betydningen i grove træk at en egenskab er klassetilknyttet i modsætning til at være objekt-tilknyttet. I C er der flere forskellig betydninger. En statisk variabel eller funktion har et scope der er begrænset til den fil, hvori den er erklæret. Statiske lokale variable i en C funktion nedlægges ikke mellem kald af funktionen.

  • Variable markeret med 'static modifier' er klassevariable i Java

    • Disse variable er hævet over instanserne, og de er fælles for mængden af instanser

  • Metoder markeret med 'static modifier' er en form for klassemetoder i Java

    • Statiske metoder i Java kræver ikke en instans af klassen (et objekt) for at kunne aktiveres

    • Statiske metoder i en klasse kan ikke tilgå instansvariable

Metoden isDigit i klassen Character er et eksempel på en klassemetode i Java

Konstanter erklæres ofte for 'static' i Java

Overdreven brug af statiske egenskaber giver mindre objekt-orienterede programmer

Konstanter erklærers ofte for statiske i Java idet en mængde af objekter lige så godt kan deles om sådanne. Konstanter erklæres således for det meste som 'final static' i Java