Access Keys:
Skip to content (Access Key - 0)


Kapittel 1.1 - Klasser og Objekter

Added by Joachim Haagen Skeie , last edited by Joachim Haagen Skeie on Nov 21, 2009 12:36
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

Som jeg har nevnt tidligere er Java et objekt-orientert språk. Java programmer er bygget opp av objekter som samarbeider med hverandre for å utføre en felles oppgave. Generelt sett kan vi tenke på et objekt som en ting. For å forklare hvordan klasser og objekter henger sammen vil jeg ta for meg personer innenfor et universitet.

Klasser

Dermed kan vi definere en generell klasse av objekter person, selv begrepet person er noe abstrakt. Hvis vi forsøker å se nærmere på hva slags personer som befinner seg på et universitet kan vi dele den abstrakte definisjonen av en person inn i ansatt og student ettersom vi mest sannsynlig vil finne begge typene ved et universitet. Dermed har vi den foreløpige inndelingen:


Figur 1 - Inndeling av objektet Person

Videre kan vi dele student inn i bachelor student, master student og doktorgrad student, og ansatt inn i f.eks. professor, sekretær og vaskehjelp, som gir følgende inndeling:


Figur 2 - Finere inndeling av objektet Person

Som du ser av figuren overfor har vi definert klasser av objekter. En klasse i Java beskriver en spesifikajson for en samling med objekter som deler egenskaper. Hvert objekt du ønsker å benytte i en Java applikasjon vil ha en tilsvarende klasse definisjon for objekter av den typen.

I stukturen overfor har vi en abstrakt klasse person som definerer alt personer har til felles, som f.eks. kan være navn, fødselsdato, høyde, hårfarge, etc. Går vi ett ledd nedover i hierarkiet finner vi klassen student. En student har alle egenskapene som en person har, samt f.eks. studentnummer, fagrettning, snittkarakter, osv. Vi kan dermed si at en student er en subklasse av en person. På samme måte er en vaskehjelp en subklasse av ansatt, mens ansatt igjen er en subklasse av person. Når en klasse B er en subklasse av klassen B, sier vi at B arver fra A.


Figur 3 - Inndeling i Klasser og Subklasser

Objekter

Et objekt i Java er en instanse av en klasse. Denne instansen er et spesifikt objekt, som f.eks. Jon. Jon har studentnummer 123456, studerer fysikk på bachelor nivå og har en snitt karakter på 3.2. Jon er i tillegg født 4.5.1980, er 1.85 høy og har mørkt hår. Jon er dermed en instanse av klassen Bachelor Student. Erik, Jahn og Mikkel er alle hver sin instanse av klassen Bachelor Student.

Adaptavist Theme Builder (3.3.5-conf210) Powered by Atlassian Confluence 3.0.2, the Enterprise Wiki.