Lecture overview -- Keyboard shortcut: 'u'  Previous page: Eksempel: OOP (1) -- Keyboard shortcut: 'p'  Next page: Eksempel: OOP (3) -- 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 29 : 31
Forelæsningsnoter i Objekt-orienteret Programmering
Introduktion til objekt-orienteret programmering
Eksempel: OOP (2)

Efter på en overordnet måde at have set på generaliserings/specialiserings hierarkiet for bankkonto klasser skitserer vi her lidt mere detaljeret programmet for to af klasserne.

Class Bank-konto
  private rentesats: Real;
  private balance: Kroner

  public balance(): Kroner
  public opret (init-beløb: Kroner)
  public hæv (beløb: Kroner)
  public indsæt (beløb: Kroner)
  public tilskriv-rente()
end Bank-konto

Den generelle bankkonto klasse. Vi ser de to private variable rentesats og balance, som beskriver tilstanden af en generel bankkonto

Class Check-konto : Bank-konto
  private antal-udskrevne-checks: integer
  public antal-udskrevne-checks(): integer
  public tilskriv-rente ()
  public clear-check(beløb: kroner)
end Check-konto

Et eksempel på en specialisering af bankkonto. Bemærk at vi re-definerer operationen tilskriv-rente, og vi har tilføjet de nye operationer clear-check og antal-udskrevne-checks i forhold til den generelle bankkonto klasse. Der er også kommet en ny instansvariabel, antal-udskrevne-checks. I nogle sprog tillader vi at instansvariable og operationer (metoder) har samme navn; I andre er dette ikke tilladt.

Hver af typerne, som indgår i klassehierarkiet, beskrives hvad angår offentlige operationer, og operationerne implementeres. På denne slide er implementationen af operationerne hverken vist eller antydet. Der er benyttet en pseudo-syntax for abstrakte datatyper, som ikke er en del af noget programmeringssprog. Det eneste formål med denne side er at illustrere principperne i objekt-orienteret udvikling, som et modstykke til den allerede viste top-down udvikling af mini-bank programmet.