|
|
Initialisering af klassevariable i Java | Kontruktorerne har til opgave at initialisere instansvariablene i Java. Men hvordan initialiseres klassevariablene i Java. Det er problemstillingen vi ser på her. |
| I langt de fleste situation kan statiske variabel initialiseres med en 'initializer' umiddelbart
i forlængelse af definitionen:
|
| Syntaksen af en static block, hvori statiske variable (klasse variable) kan initialiseres. Semantisk set udføres blokkens kommandoer kun én gang, nemlig når klassen 'loades'. |
| Instans initialiseringsblokke er en sædvanlig blok af kommandoer, som kan placeres en vilkårlig sted i en klasse. I forbindelse med skabelse af objekter bliver sådanne blokke udført (i en ganske bestemt rækkefølge, på et ganske bestemt tidspunkt i forhold til konstruktoren: før klassens konstruktor, men efter udførelse af superklassen's konstruktor). Man kan placere vilkårligt program i sådanne blokke. Men lad vær'! Det vil ikke give gode programmer, og der er stor fare for, at en sådan programmeringsstil vil fjerne sig fra den objekt-orienterede stil vi går efter på dette kursus. |