Lecture overview -- Keyboard shortcut: 'u'  Previous page: Programbeskrivelse kontra programudførelse -- Keyboard shortcut: 'p'  Next page: Hvordan starter udførelsen af et objekt-orienteret program? -- 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 24 : 33
Forelæsningsnoter i Objekt-orienteret Programmering
Objekt-orienteret programmering i Java, del 2
Objekt-interaktion

Objekter interagerer som bekendt med hinanden ved at sende beskeder. Vi vil her se på et scenario som illustrerer, hvordan objekt-interaktion kan udvikle sig mellem 'et netværk' af objekter. Vi fokuserer både på objekterne under udførelsen, og på de bagved liggende klasser i programbeskrivelsen

Objekter interagerer med hinanden ved at sende beskeder

En besked til et objekt forårsager aktivering af en metode i objektets klasse

Go to image seriesEt scenarie hvor et kundeobjekt indsætter 500 kroner i banken.
Det er ofte vanskeligt at afgøre i hvilket objekt man skal placere en given funktionalitet

Skal beskeden gemKonto sendes til enKontoSamling med enKonto som parameter eller
Skal beskeden gemKonto sendes til enKonto med enKontoSamling som parameter

Vi stødte på denne problemstilling i scenariet ovenfor. Her valgte vi at lade kontosamlingen være ansvarlig for fremskaffelse og lagring af konti. Alternativt kunne vi flytte ansvaret for lagring af en konto til Kontoklasse. I dette tilfælde er det naturligt at 'find' og 'gem' er metoder i samme klasse

Placering af funktionalitet på klasser beror på den valgte ansvarsfordeling mellem klasserne

Dette er et emne som tages op i designfasen af udviklingsprocessen

Vi henviser til hosstående reference for en yderligere diskussion af ansvarsfordeling