|
|
Hvordan lokaliseres en klasse? | Klasser benytter sig typisk af andre klasser. Problemstillingen, som vi her ser på, er hvordan compileren og fortolkeren lokaliserer de klasser, der er behov for. Vi ser specielt på en angivelse af den såkaldte class path. Vi vil her interessere os for de mere princielle forhold omkring lokalisering af klasser. For detaljer henvises til JDK dokumentationen, hvortil vi refererer nedenfor. |
| Behovet opstår f.eks. når vi i et program skal type checke et kald af en metode, som befinder sig i en klasse i en anden fil. Java værktøjet vil i dette tilfælde forsøge at finde den oversatte fil eller kilde filen, hvor klassen befinder sig. |
| Systemklasserne definerer selve java platformen; disse leveres med JDK omgivelsen. Udvidelsesklasserne (extensions) er pakker af udvidelser til Java platformen, som typisk befinder sig i et bestemt og fast katalog. Hvis alle java filer befinder sig i 'det nuværende katalog' er det ikke nødvendigt at bekymre sig om class path. Hver sti i class path peger på et katalog eller zip/jar fil, som repræsenterer en Java pakke. |
![]() | Vi ser en skitse af et filsystem hvor classpath udpeger en mængde af 'punkter'. Disse punkter er de ydre pakker, som kan indeholde filer med klasser. Punkterne kan også indeholde andre pakker med filer og eller pakker. De markerede, lysegrønne områder er således de områder, der kan indeholde java class filer. |
|