Lecture overview -- Keyboard shortcut: 'u'  Previous page: Nedarvning i Java -- Keyboard shortcut: 'p'  Next page: Checkkonto er både en udvidelse og en specialisering af Konto -- 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 14 : 41
Forelæsningsnoter i Objekt-orienteret Programmering
Nedarvning
Eksempel på nedarvning: CheckKonto

Vi har i en tidligere lektion set på klassen Konto. Her vil vi studere en specialiseret konto, som vi kalder CheckKonto

/user/normark/courses/prog1/prog1-01/sources/java/noteEksempler/Bank2.javaJava klassen Konto.

Java klassen Konto. Dnnne version er forberedt på at indgå i et klassehierarki idet de tre instansvariable navn og saldo er erklæret som protected. Med andre ord kan renteSats, navn og saldo ses i evt. subklasser af Konto. Vi vender tilbage til protectede egenskaber længere fremme i denne lektion.

class CheckKonto extends Konto {

   protected double ågerRenteSats;
   protected int checkNummer; 

   public CheckKonto(String nytNavn) {
     super(nytNavn);
     ågerRenteSats = 0.18;
     checkNummer = 0;
   }

   public void hævCheck(double beløb){
     this.hæv(beløb);
     checkNummer = checkNummer + 1;
   }
               
   public void tilskrivRente() {
     if (saldo > 0)  
        super.tilskrivRente();
     else
        saldo = saldo + saldo * ågerRenteSats;
   }

   public String toString() {
     return super.toString() +
            "Udskrevene checks: " + checkNummer + "\n";
   }

} // End Checkkonto

Java klassen CheckKonto som arver fra Konto. Vi vender senere tilbage til detaljerne i konstruktoren samt anvendelsen af super i de forskellige metoder i klassen - altså alle de blå aspekter i ovenstående.