Oppg-5-1

Øvelse 5 – Oppgave 1

a) Hva er fordelen med objektorientert programmering sammenlignet med prosedyrebasert programmering?

b) Hva er forskjellen på en klasse og en instans?

c) Hva er en klassevariabel?

d) Forklar hva «self» parameteret er og hvorfor det er nødvendig i objekter.

 

Løsningsforslag:

Oppgave 1 svar

A) Fordelen med objekter kontra funksjoner(prosedyrer) er at objekter inneholder både dataene og koden den trenger for å fungere, og gir kode utenfor objektet tilgang til data gjennom sine metoder.

B) En instans er et objekt av en klasse, en klasse kan sees på som en mal for instanser.

C) En klassevariabel er en variabel som er felles for alle instanser eller objekter av en klasse. Endres den for et objekt, endres den for alle.

D) «self «er objektets referanse til seg selv, og når et «self» argument sendes til en metode i klassen brukes det for å identifisere instansen. «self» er også nødvendig for å aksessere (de andre) attributtene og verdiene til disse for hver instans.