Lecture overview -- Keyboard shortcut: 'u'  Previous page: Information hiding [Section] -- Keyboard shortcut: 'p'  Next page: Information hiding i Java -- 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 9 : 33
Forelæsningsnoter i Objekt-orienteret Programmering
Objekt-orienteret programmering i Java, del 2
Information hiding i forskellige objekt-orienterede sprog

Som allerede omtalt i den første lektion er kontrol af synlighed af variable og metoder et meget væsentligt element af objekt-orienteret programmering. Vi starter med at se på nogle generelle forhold om information hiding i objekt-orienterede programmeringssprog

Det grundliggende spørgsmål er hvad klienter af klassen kan se, og hvad der privat i klassen

  • Forskellige måder at understøtte 'information hiding' i objekt-orienterede programmeringssprog

    • Sproget har faste og uforanderlige regler for synlighed

      • Alt er synligt (Beta)

      • Alle instansvariable er private, alle metoder er synlige (Smalltalk)

    • Sproget overlader det til programmøren at bestemme synligheden

      • Der findes en 'export liste' i hver klasse der angiver de variable og metoder, som er synlige fra klientside (det oprindelige Eiffel)

      • Klassen kategoriserer variable og metoder i afdelinger, hvoraf nogle er synlige udaftil, og nogle er private (C++, Eiffel)

      • Hver variabel og metode angiver eksplicit i sin egenskabslister om den er synlig fra klienter eller ej (Java)

Det anbefales generelt at have private instansvariable og at gøre en delmængde af metoderne offentlige