5.9 Arv

Från Mathonline
Version från den 13 februari 2026 kl. 07.30 av Taifun (Diskussion | bidrag)

(skillnad) ← Äldre version | Nuvarande version (skillnad) | Nyare version → (skillnad)
Hoppa till: navigering, sök
       Agenda          Genomgång          Övningar 27          Nästa lektion  >>      


5.9   Arv

Arvrelationens modell som klassdiagram

Arv.jpg


Superklassen kallas även för basklassen.


Modellens implementering

Klassen Date

Både superklassen Person och subklassen Employee (nedan) behöver klassen Date, för att

deklarera datamedlemmar av typ Date. Det är samma klass som användes vid komposition.

Därför måste klassen Date inkluderas i detta projekt.

På så sätt är projektet ett exempel på både komposition och arv.

Super- eller basklassen Person

Person h.jpg

Problem:

Subklassen Employee ärver superklassen Person:s alla datamedlemmar och metoder.

Men hur ska konstruktorn ärvas? Den kan inte ärvas direkt, eftersom:

Konstruktorns namn = Klassnamn. Sub- och superklassen har olika namn.

Lösningen:

Även subklassens konstruktor måste explicit ärva superklassens konstruktor.

Se konstruktorns kod i subklassen Employee nedan:

Subklassen Employee

Employee h.jpg


Programmet Inheritance

Inheritance h.jpg










Copyright © 2026 Lieta AB. All Rights Reserved.